43 #ifndef PB_DS_TAG_AND_TRAIT_HPP
44 #define PB_DS_TAG_AND_TRAIT_HPP
214 template<
typename _Tp1,
typename _Tp2,
typename _Tp3,
typename _Tp4>
220 template<
typename _Tag>
232 order_preserving =
false,
233 erase_can_throw =
false,
234 split_join_can_throw =
false,
235 reverse_iteration =
false
248 order_preserving =
false,
249 erase_can_throw =
false,
250 split_join_can_throw =
false,
251 reverse_iteration =
false
264 order_preserving =
true,
265 erase_can_throw =
false,
266 split_join_can_throw =
false,
267 reverse_iteration =
true
280 order_preserving =
true,
281 erase_can_throw =
false,
282 split_join_can_throw =
false,
283 reverse_iteration =
true
296 order_preserving =
true,
297 erase_can_throw =
true,
298 split_join_can_throw =
true,
299 reverse_iteration =
false
312 order_preserving =
true,
313 erase_can_throw =
false,
314 split_join_can_throw =
true,
315 reverse_iteration =
true
328 order_preserving =
false,
329 erase_can_throw =
false,
330 split_join_can_throw =
false,
331 reverse_iteration =
false
344 order_preserving =
false,
345 erase_can_throw =
false,
346 split_join_can_throw =
false,
347 reverse_iteration =
false
360 order_preserving =
false,
361 erase_can_throw =
false,
362 split_join_can_throw =
false,
363 reverse_iteration =
false
376 order_preserving =
false,
377 erase_can_throw =
false,
378 split_join_can_throw =
false,
379 reverse_iteration =
false
392 order_preserving =
false,
393 erase_can_throw =
false,
394 split_join_can_throw =
false,
395 reverse_iteration =
false
408 order_preserving =
false,
409 erase_can_throw =
false,
410 split_join_can_throw =
true,
411 reverse_iteration =
false
418 template<
typename Cntnr>
422 typedef Cntnr container_type;
423 typedef typename Cntnr::container_category container_category;
425 typedef typename base_type::invalidation_guarantee invalidation_guarantee;
448 template<
typename Key,
typename Mapped,
typename _Alloc,
typename Tag,
449 typename Policy_Tl = null_type>
True only if split or join operations can throw.
Redundant-counter binomial-heap.
Basic string container, inclusive of strings, ropes, etc.
A trivial iterator tag. Signifies that the iterators has none of std::iterators's movement abilities...
Binary-heap (array-based).
True only if erasing a key can throw.
void trivial_iterator_difference_type
Prohibit moving trivial iterators.
Represents no type, or absence of type, for template tricks.
True only if Cntnr objects guarantee storing keys by order.
Primary template, container traits base.
Basic associative-container.
True only reverse iterators are supported.
A null node updator, indicating that no node updates are required.
Dispatch mechanism, primary template for associative types.