__GNU_PBDS::TRIE_STRING_ACCESS_TRAITS(3cxx)

πŸ’– __gnu_pbds::trie_string_access_traits πŸ’–

okay so this is the 3cxx manual page, and the full name is literally:

__gnu_pbds::trie_string_access_traits< String, Min_E_Val, Max_E_Val, Reverse, _Alloc >

It’s a struct template. It’s giving very specific, very iconic. No cap. πŸ’…

✨ NAME ✨

__gnu_pbds::trie_string_access_traits< String, Min_E_Val, Max_E_Val, Reverse, _Alloc >

🌈 SYNOPSIS 🌈

#include <trie_policy.hpp>

πŸŽ€ Public Types πŸŽ€

  • enum { reverse } β€” a little enum holding reverse. That’s it. Gorgeous.
  • enum { min_e_val, max_e_val, max_size } β€” the enum trio: min_e_val, max_e_val, and max_size. Slay.
  • typedef detail::__conditional_type< Reverse, typenameString::const_reverse_iterator, typenameString::const_iterator >::__type const_iterator β€” the element const iterator type. The docs literally say Element const iterator type. Keep that energy.
  • typedef std::iterator_traits< const_iterator >::value_type e_type β€” element type. Docs say Element type. 🫢
  • typedef detail::rebind_traits< _Alloc, key_type >::const_reference key_const_reference β€” the key const-reference typedef. It’s giving rebind_traits.
  • typedef String key_type β€” boom, key_type is your String.
  • typedef _Alloc::size_type size_type β€” and size_type comes from _Alloc.

🌸 Static Public Member Functions 🌸

  • static const_iterator begin (key_const_reference) β€” returns a const_iterator to the first element of the key_const_reference agumnet. (That agumnet spelling is from the original, bestie, not me 😭.)
  • static size_type e_pos (e_type e) β€” maps an element to a position. Simple. Gorgeous.
  • static const_iterator end (key_const_reference) β€” returns a const_iterator to the after-last element of the key_const_reference argument.

πŸ¦‹ Detailed Description πŸ¦‹

The template signature is:

template<typename String = std::string, typename String::value_type
    Min_E_Val = detail::__numeric_traits<typename
    String::value_type>::__min, typename String::value_type Max_E_Val =
    detail::__numeric_traits<typename
    String::value_type>::__max, bool Reverse = false, typename _Alloc =
    std::allocator<char>>
    struct __gnu_pbds::trie_string_access_traits< String, Min_E_Val,
    Max_E_Val, Reverse, _Alloc >

And the description text, stray opening quote and all, is:

"Element access traits for string types.

Yes, that " is in the source. We’re not fixing it. Facts are facts πŸ’….

🌱 Template Parameters 🌱

  • String β€” String type.
  • Min_E_Val β€” Minimal element value.
  • Max_E_Val β€” Maximum element value.
  • Reverse β€” Reverse iteration should be used. Default: false.
  • _Alloc β€” Allocator type.

🧚 Member Typedef Documentation 🧚

All of these live under the exact template head we just showed, bestie.

🧡 const_iterator

typedef detail::__conditional_type<Reverse,typenameString::const_reverse_iterator,typenameString::const_iterator>::__type
__gnu_pbds::trie_string_access_traits< String, Min_E_Val, Max_E_Val, Reverse, _Alloc >::const_iterator

The comment is: Element const iterator type.

🧡 e_type

typedef std::iterator_traits<const_iterator>::value_type
__gnu_pbds::trie_string_access_traits< String, Min_E_Val, Max_E_Val, Reverse, _Alloc >::e_type

The comment is: Element type.

πŸ’œ Member Function Documentation πŸ’œ

These all have the same template head as above, and each one is marked [inline], [static] in the docs.

πŸ’… begin

static const_iterator __gnu_pbds::trie_string_access_traits< String, Min_E_Val, Max_E_Val, Reverse, _Alloc >::begin (key_const_reference) [inline], [static]

The docs say: Returns a const_iterator to the first element of key_const_reference agumnet. Typo preserved, bestie. 🫢

πŸ’… e_pos

static size_type __gnu_pbds::trie_string_access_traits< String, Min_E_Val, Max_E_Val, Reverse, _Alloc >::e_pos (e_type e) [inline], [static]

The docs say: Maps an element to a position.

πŸ’… end

static const_iterator __gnu_pbds::trie_string_access_traits< String, Min_E_Val, Max_E_Val, Reverse, _Alloc >::end (key_const_reference) [inline], [static]

The docs say: Returns a const_iterator to the after-last element of key_const_reference argument.

πŸŽ€ Author πŸŽ€

Generated automatically by Doxygen for libstdc++ from the source code.


πŸŽ€ cute sign-off: the source/version-and-date footer position on this page literally reads libst__gnu_pbds::tri...verse, _Alloc >(3cxx) β€” that’s the footer string we got, bestie. No cap, it’s a little cursed, but we keep the facts. Mwah πŸ’‹βœ¨