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 Production >
constexpr auto capture (lexyd::_prd< Production >)
 
template<typename Token >
constexpr auto capture (Token)
 
constexpr auto current () const noexcept -> typename Reader::marker
 
template<typename TokenRule >
constexpr bool discard (TokenRule rule)
 
template<typename... Args>
constexpr void error (const char *msg, Args &&... args)
 
template<typename Tag , typename... Args>
constexpr void error (Tag, Args &&... args)
 
constexpr auto error_recovery ()
 
template<typename... Args>
constexpr void fatal_error (const char *msg, Args &&... args)
 
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 33 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 169 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 412 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 400 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 263 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 257 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 235 of file dsl/scan.hpp.

◆ capture() [1/2]

template<typename Derived , typename Reader >
template<typename Production >
constexpr auto lexy::_detail::scanner< Derived, Reader >::capture ( lexyd::_prd< Production >  )
inlineconstexpr

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

◆ capture() [2/2]

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

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

◆ current()

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

Definition at line 189 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 309 of file dsl/scan.hpp.

◆ error() [1/2]

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

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

◆ error() [2/2]

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 326 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 302 of file dsl/scan.hpp.

◆ fatal_error() [1/2]

template<typename Derived , typename Reader >
template<typename... Args>
constexpr void lexy::_detail::scanner< Derived, Reader >::fatal_error ( const char *  msg,
Args &&...  args 
)
inlineconstexpr

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

◆ fatal_error() [2/2]

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 340 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 370 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 377 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 180 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 175 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 214 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 227 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 355 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 201 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 363 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 185 of file dsl/scan.hpp.

◆ reader()

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

Definition at line 404 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 194 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 410 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 Dec 13 2024 03:19:19