Classes | Public Types | Public Member Functions | Protected Member Functions | Private Types | Private Attributes | List of all members
lexy::_detail::scanner< Derived, Reader > Class Template Reference

#include <scan.hpp>

Classes

class  error_recovery_guard
 

Public Types

using encoding = typename Reader::encoding
 

Public Member Functions

template<typename Rule , typename = std::enable_if_t<lexy::is_rule<Rule>>>
constexpr bool branch (Rule rule)
 
template<typename Production , typename T , typename = lexy::production_rule<Production>>
constexpr bool branch (scan_result< T > &result, Production={})
 
template<typename T , typename Rule , typename = std::enable_if_t<lexy::is_rule<Rule>>>
constexpr bool branch (scan_result< T > &result, Rule)
 
template<typename Rule >
constexpr auto capture (Rule rule) -> scan_result< lexeme< Reader >>
 
template<typename Token >
constexpr auto capture_token (Token)
 
template<typename TokenRule >
constexpr bool discard (TokenRule rule)
 
template<typename Tag , typename... Args>
constexpr void error (Tag, Args &&... args)
 
constexpr auto error_recovery ()
 
template<typename Tag , typename... Args>
constexpr void fatal_error (Tag tag, Args &&... args)
 
template<typename T , typename Base , typename Digits >
constexpr auto integer (Digits digits)
 
template<typename T , typename Digits >
constexpr auto integer (Digits digits)
 
constexpr bool is_at_eof () const
 
constexpr operator bool () const noexcept
 
constexpr scanneroperator= (const scanner &) noexcept=delete
 
template<typename Production , typename = lexy::production_rule<Production>>
constexpr auto parse (Production={})
 
template<typename Rule , typename = std::enable_if_t<lexy::is_rule<Rule>>>
constexpr void parse (Rule rule)
 
template<typename T , typename Rule , typename = std::enable_if_t<lexy::is_rule<Rule>>>
constexpr auto parse (Rule rule)
 
template<typename T , typename Rule , typename = std::enable_if_t<lexy::is_rule<Rule>>>
constexpr void parse (scan_result< T > &result, Rule)
 
template<typename Rule >
constexpr bool peek (Rule)
 
constexpr auto position () const noexcept -> typename Reader::iterator
 
constexpr auto remaining_input () const noexcept
 
constexpr scanner (const scanner &) noexcept=delete
 

Protected Member Functions

constexpr Reader & reader () noexcept
 
constexpr scanner (const Reader &reader) noexcept
 

Private Types

enum  { _state_normal, _state_failed, _state_recovery }
 

Private Attributes

Reader _reader
 
enum lexy::_detail::scanner:: { ... }  _state
 

Detailed Description

template<typename Derived, typename Reader>
class lexy::_detail::scanner< Derived, Reader >

Definition at line 31 of file dsl/scan.hpp.

Member Typedef Documentation

◆ encoding

template<typename Derived , typename Reader >
using lexy::_detail::scanner< Derived, Reader >::encoding = typename Reader::encoding

Definition at line 167 of file dsl/scan.hpp.

Member Enumeration Documentation

◆ anonymous enum

template<typename Derived , typename Reader >
anonymous enum
private
Enumerator
_state_normal 
_state_failed 
_state_recovery 

Definition at line 399 of file dsl/scan.hpp.

Constructor & Destructor Documentation

◆ scanner() [1/2]

template<typename Derived , typename Reader >
constexpr lexy::_detail::scanner< Derived, Reader >::scanner ( const scanner< Derived, Reader > &  )
constexprdeletenoexcept

◆ scanner() [2/2]

template<typename Derived , typename Reader >
constexpr lexy::_detail::scanner< Derived, Reader >::scanner ( const Reader &  reader)
inlineexplicitconstexprprotectednoexcept

Definition at line 387 of file dsl/scan.hpp.

Member Function Documentation

◆ branch() [1/3]

template<typename Derived , typename Reader >
template<typename Rule , typename = std::enable_if_t<lexy::is_rule<Rule>>>
constexpr bool lexy::_detail::scanner< Derived, Reader >::branch ( Rule  rule)
inlineconstexpr

Definition at line 257 of file dsl/scan.hpp.

◆ branch() [2/3]

template<typename Derived , typename Reader >
template<typename Production , typename T , typename = lexy::production_rule<Production>>
constexpr bool lexy::_detail::scanner< Derived, Reader >::branch ( scan_result< T > &  result,
Production  = {} 
)
inlineconstexpr

Definition at line 251 of file dsl/scan.hpp.

◆ branch() [3/3]

template<typename Derived , typename Reader >
template<typename T , typename Rule , typename = std::enable_if_t<lexy::is_rule<Rule>>>
constexpr bool lexy::_detail::scanner< Derived, Reader >::branch ( scan_result< T > &  result,
Rule   
)
inlineconstexpr

Definition at line 229 of file dsl/scan.hpp.

◆ capture()

template<typename Derived , typename Reader >
template<typename Rule >
constexpr auto lexy::_detail::scanner< Derived, Reader >::capture ( Rule  rule) -> scan_result<lexeme<Reader>>
inlineconstexpr

Definition at line 365 of file dsl/scan.hpp.

◆ capture_token()

template<typename Derived , typename Reader >
template<typename Token >
constexpr auto lexy::_detail::scanner< Derived, Reader >::capture_token ( Token  )
inlineconstexpr

Definition at line 379 of file dsl/scan.hpp.

◆ discard()

template<typename Derived , typename Reader >
template<typename TokenRule >
constexpr bool lexy::_detail::scanner< Derived, Reader >::discard ( TokenRule  rule)
inlineconstexpr

Definition at line 303 of file dsl/scan.hpp.

◆ error()

template<typename Derived , typename Reader >
template<typename Tag , typename... Args>
constexpr void lexy::_detail::scanner< Derived, Reader >::error ( Tag  ,
Args &&...  args 
)
inlineconstexpr

Definition at line 320 of file dsl/scan.hpp.

◆ error_recovery()

template<typename Derived , typename Reader >
constexpr auto lexy::_detail::scanner< Derived, Reader >::error_recovery ( )
inlineconstexpr

Definition at line 296 of file dsl/scan.hpp.

◆ fatal_error()

template<typename Derived , typename Reader >
template<typename Tag , typename... Args>
constexpr void lexy::_detail::scanner< Derived, Reader >::fatal_error ( Tag  tag,
Args &&...  args 
)
inlineconstexpr

Definition at line 327 of file dsl/scan.hpp.

◆ integer() [1/2]

template<typename Derived , typename Reader >
template<typename T , typename Base , typename Digits >
constexpr auto lexy::_detail::scanner< Derived, Reader >::integer ( Digits  digits)
inlineconstexpr

Definition at line 350 of file dsl/scan.hpp.

◆ integer() [2/2]

template<typename Derived , typename Reader >
template<typename T , typename Digits >
constexpr auto lexy::_detail::scanner< Derived, Reader >::integer ( Digits  digits)
inlineconstexpr

Definition at line 357 of file dsl/scan.hpp.

◆ is_at_eof()

template<typename Derived , typename Reader >
constexpr bool lexy::_detail::scanner< Derived, Reader >::is_at_eof ( ) const
inlineconstexpr

Definition at line 178 of file dsl/scan.hpp.

◆ operator bool()

template<typename Derived , typename Reader >
constexpr lexy::_detail::scanner< Derived, Reader >::operator bool ( ) const
inlineexplicitconstexprnoexcept

Definition at line 173 of file dsl/scan.hpp.

◆ operator=()

template<typename Derived , typename Reader >
constexpr scanner& lexy::_detail::scanner< Derived, Reader >::operator= ( const scanner< Derived, Reader > &  )
constexprdeletenoexcept

◆ parse() [1/4]

template<typename Derived , typename Reader >
template<typename Production , typename = lexy::production_rule<Production>>
constexpr auto lexy::_detail::scanner< Derived, Reader >::parse ( Production  = {})
inlineconstexpr

Definition at line 208 of file dsl/scan.hpp.

◆ parse() [2/4]

template<typename Derived , typename Reader >
template<typename Rule , typename = std::enable_if_t<lexy::is_rule<Rule>>>
constexpr void lexy::_detail::scanner< Derived, Reader >::parse ( Rule  rule)
inlineconstexpr

Definition at line 221 of file dsl/scan.hpp.

◆ parse() [3/4]

template<typename Derived , typename Reader >
template<typename T , typename Rule , typename = std::enable_if_t<lexy::is_rule<Rule>>>
constexpr auto lexy::_detail::scanner< Derived, Reader >::parse ( Rule  rule)
inlineconstexpr

Definition at line 335 of file dsl/scan.hpp.

◆ parse() [4/4]

template<typename Derived , typename Reader >
template<typename T , typename Rule , typename = std::enable_if_t<lexy::is_rule<Rule>>>
constexpr void lexy::_detail::scanner< Derived, Reader >::parse ( scan_result< T > &  result,
Rule   
)
inlineconstexpr

Definition at line 195 of file dsl/scan.hpp.

◆ peek()

template<typename Derived , typename Reader >
template<typename Rule >
constexpr bool lexy::_detail::scanner< Derived, Reader >::peek ( Rule  )
inlineconstexpr

Definition at line 343 of file dsl/scan.hpp.

◆ position()

template<typename Derived , typename Reader >
constexpr auto lexy::_detail::scanner< Derived, Reader >::position ( ) const -> typename Reader::iterator
inlineconstexprnoexcept

Definition at line 183 of file dsl/scan.hpp.

◆ reader()

template<typename Derived , typename Reader >
constexpr Reader& lexy::_detail::scanner< Derived, Reader >::reader ( )
inlineconstexprprotectednoexcept

Definition at line 391 of file dsl/scan.hpp.

◆ remaining_input()

template<typename Derived , typename Reader >
constexpr auto lexy::_detail::scanner< Derived, Reader >::remaining_input ( ) const
inlineconstexprnoexcept

Definition at line 188 of file dsl/scan.hpp.

Member Data Documentation

◆ _reader

template<typename Derived , typename Reader >
Reader lexy::_detail::scanner< Derived, Reader >::_reader
private

Definition at line 397 of file dsl/scan.hpp.

◆ _state

enum { ... } lexy::_detail::scanner< Derived, Reader >::_state

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


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