Public Types | Public Member Functions | Public Attributes | Static Public Attributes | List of all members
lexy::_detail::lit_trie< Encoding, CaseFolding, MaxCharCount, CharClasses > Struct Template Reference

#include <literal.hpp>

Public Types

using char_type = typename Encoding::char_type
 
using encoding = Encoding
 
template<typename Reader >
using reader = CaseFolding< Reader >
 

Public Member Functions

template<typename CharT >
LEXY_CONSTEVAL std::size_t insert (std::size_t from, CharT _c)
 
template<typename CharT , CharT... C>
LEXY_CONSTEVAL std::size_t insert (std::size_t pos, type_string< CharT, C... >)
 
LEXY_CONSTEVAL lit_trie ()
 
LEXY_CONSTEVAL auto node_transitions (std::size_t node) const
 

Public Attributes

std::size_t node_char_class [max_node_count]
 
std::size_t node_count
 
std::size_t node_value [max_node_count]
 
char_type transition_char [max_transition_count]
 
std::size_t transition_from [max_transition_count]
 
std::size_t transition_to [max_transition_count]
 

Static Public Attributes

static constexpr auto max_node_count = MaxCharCount + 1
 
static constexpr auto max_transition_count = max_node_count == 1 ? 1 : max_node_count - 1
 
static constexpr auto node_no_match = std::size_t(-1)
 

Detailed Description

template<typename Encoding, template< typename > typename CaseFolding, std::size_t MaxCharCount, typename... CharClasses>
struct lexy::_detail::lit_trie< Encoding, CaseFolding, MaxCharCount, CharClasses >

Definition at line 67 of file literal.hpp.

Member Typedef Documentation

◆ char_type

template<typename Encoding , template< typename > typename CaseFolding, std::size_t MaxCharCount, typename... CharClasses>
using lexy::_detail::lit_trie< Encoding, CaseFolding, MaxCharCount, CharClasses >::char_type = typename Encoding::char_type

Definition at line 70 of file literal.hpp.

◆ encoding

template<typename Encoding , template< typename > typename CaseFolding, std::size_t MaxCharCount, typename... CharClasses>
using lexy::_detail::lit_trie< Encoding, CaseFolding, MaxCharCount, CharClasses >::encoding = Encoding

Definition at line 69 of file literal.hpp.

◆ reader

template<typename Encoding , template< typename > typename CaseFolding, std::size_t MaxCharCount, typename... CharClasses>
template<typename Reader >
using lexy::_detail::lit_trie< Encoding, CaseFolding, MaxCharCount, CharClasses >::reader = CaseFolding<Reader>

Definition at line 73 of file literal.hpp.

Constructor & Destructor Documentation

◆ lit_trie()

template<typename Encoding , template< typename > typename CaseFolding, std::size_t MaxCharCount, typename... CharClasses>
LEXY_CONSTEVAL lexy::_detail::lit_trie< Encoding, CaseFolding, MaxCharCount, CharClasses >::lit_trie ( )
inline

Definition at line 90 of file literal.hpp.

Member Function Documentation

◆ insert() [1/2]

template<typename Encoding , template< typename > typename CaseFolding, std::size_t MaxCharCount, typename... CharClasses>
template<typename CharT >
LEXY_CONSTEVAL std::size_t lexy::_detail::lit_trie< Encoding, CaseFolding, MaxCharCount, CharClasses >::insert ( std::size_t  from,
CharT  _c 
)
inline

Definition at line 99 of file literal.hpp.

◆ insert() [2/2]

template<typename Encoding , template< typename > typename CaseFolding, std::size_t MaxCharCount, typename... CharClasses>
template<typename CharT , CharT... C>
LEXY_CONSTEVAL std::size_t lexy::_detail::lit_trie< Encoding, CaseFolding, MaxCharCount, CharClasses >::insert ( std::size_t  pos,
type_string< CharT, C... >   
)
inline

Definition at line 127 of file literal.hpp.

◆ node_transitions()

template<typename Encoding , template< typename > typename CaseFolding, std::size_t MaxCharCount, typename... CharClasses>
LEXY_CONSTEVAL auto lexy::_detail::lit_trie< Encoding, CaseFolding, MaxCharCount, CharClasses >::node_transitions ( std::size_t  node) const
inline

Definition at line 132 of file literal.hpp.

Member Data Documentation

◆ max_node_count

template<typename Encoding , template< typename > typename CaseFolding, std::size_t MaxCharCount, typename... CharClasses>
constexpr auto lexy::_detail::lit_trie< Encoding, CaseFolding, MaxCharCount, CharClasses >::max_node_count = MaxCharCount + 1
staticconstexpr

Definition at line 75 of file literal.hpp.

◆ max_transition_count

template<typename Encoding , template< typename > typename CaseFolding, std::size_t MaxCharCount, typename... CharClasses>
constexpr auto lexy::_detail::lit_trie< Encoding, CaseFolding, MaxCharCount, CharClasses >::max_transition_count = max_node_count == 1 ? 1 : max_node_count - 1
staticconstexpr

Definition at line 77 of file literal.hpp.

◆ node_char_class

template<typename Encoding , template< typename > typename CaseFolding, std::size_t MaxCharCount, typename... CharClasses>
std::size_t lexy::_detail::lit_trie< Encoding, CaseFolding, MaxCharCount, CharClasses >::node_char_class[max_node_count]

Definition at line 84 of file literal.hpp.

◆ node_count

template<typename Encoding , template< typename > typename CaseFolding, std::size_t MaxCharCount, typename... CharClasses>
std::size_t lexy::_detail::lit_trie< Encoding, CaseFolding, MaxCharCount, CharClasses >::node_count

Definition at line 80 of file literal.hpp.

◆ node_no_match

template<typename Encoding , template< typename > typename CaseFolding, std::size_t MaxCharCount, typename... CharClasses>
constexpr auto lexy::_detail::lit_trie< Encoding, CaseFolding, MaxCharCount, CharClasses >::node_no_match = std::size_t(-1)
staticconstexpr

Definition at line 78 of file literal.hpp.

◆ node_value

template<typename Encoding , template< typename > typename CaseFolding, std::size_t MaxCharCount, typename... CharClasses>
std::size_t lexy::_detail::lit_trie< Encoding, CaseFolding, MaxCharCount, CharClasses >::node_value[max_node_count]

Definition at line 81 of file literal.hpp.

◆ transition_char

template<typename Encoding , template< typename > typename CaseFolding, std::size_t MaxCharCount, typename... CharClasses>
char_type lexy::_detail::lit_trie< Encoding, CaseFolding, MaxCharCount, CharClasses >::transition_char[max_transition_count]

Definition at line 86 of file literal.hpp.

◆ transition_from

template<typename Encoding , template< typename > typename CaseFolding, std::size_t MaxCharCount, typename... CharClasses>
std::size_t lexy::_detail::lit_trie< Encoding, CaseFolding, MaxCharCount, CharClasses >::transition_from[max_transition_count]

Definition at line 87 of file literal.hpp.

◆ transition_to

template<typename Encoding , template< typename > typename CaseFolding, std::size_t MaxCharCount, typename... CharClasses>
std::size_t lexy::_detail::lit_trie< Encoding, CaseFolding, MaxCharCount, CharClasses >::transition_to[max_transition_count]

Definition at line 88 of file literal.hpp.


The documentation for this struct was generated from the following file:


behaviortree_cpp_v4
Author(s): Davide Faconti
autogenerated on Fri Jun 28 2024 02:20:10