Loading...
Searching...
No Matches
ledger::query_t::lexer_t Class Reference

#include <query.h>

+ Collaboration diagram for ledger::query_t::lexer_t:

Classes

struct  token_t
 

Public Member Functions

 lexer_t (const lexer_t &lexer)
 
 lexer_t (value_t::sequence_t::const_iterator _begin, value_t::sequence_t::const_iterator _end, bool _multiple_args=true)
 
token_t next_token (token_t::kind_t tok_context=token_t::UNKNOWN)
 
token_t peek_token (token_t::kind_t tok_context=token_t::UNKNOWN)
 
void push_token (token_t tok)
 
bool unbalanced_braces (const string str)
 
 ~lexer_t () throw ()
 

Public Attributes

token_t token_cache
 

Friends

class parser_t
 
class query_t
 

Detailed Description

Definition at line 54 of file query.h.

Constructor & Destructor Documentation

◆ lexer_t() [1/2]

ledger::query_t::lexer_t::lexer_t ( value_t::sequence_t::const_iterator _begin,
value_t::sequence_t::const_iterator _end,
bool _multiple_args = true )
inline

Definition at line 198 of file query.h.

References assert, and TRACE_CTOR.

◆ lexer_t() [2/2]

ledger::query_t::lexer_t::lexer_t ( const lexer_t & lexer)
inline

Definition at line 211 of file query.h.

References TRACE_CTOR.

◆ ~lexer_t()

ledger::query_t::lexer_t::~lexer_t ( )
throw ( )
inline

Definition at line 220 of file query.h.

References TRACE_DTOR.

Member Function Documentation

◆ next_token()

token_t ledger::query_t::lexer_t::next_token ( token_t::kind_t tok_context = token_t::UNKNOWN)

Referenced by peek_token().

+ Here is the caller graph for this function:

◆ peek_token()

token_t ledger::query_t::lexer_t::peek_token ( token_t::kind_t tok_context = token_t::UNKNOWN)
inline

Definition at line 229 of file query.h.

References ledger::downcast(), ledger::query_t::lexer_t::token_t::kind, next_token(), token_cache, and ledger::query_t::lexer_t::token_t::UNKNOWN.

Referenced by ledger::query_t::parser_t::tokens_remaining().

+ Here is the call graph for this function:
+ Here is the caller graph for this function:

◆ push_token()

void ledger::query_t::lexer_t::push_token ( token_t tok)
inline

Definition at line 225 of file query.h.

References assert, ledger::downcast(), ledger::query_t::lexer_t::token_t::kind, token_cache, and ledger::query_t::lexer_t::token_t::UNKNOWN.

+ Here is the call graph for this function:

◆ unbalanced_braces()

bool ledger::query_t::lexer_t::unbalanced_braces ( const string str)

Friends And Related Symbol Documentation

◆ parser_t

Definition at line 57 of file query.h.

◆ query_t

Definition at line 56 of file query.h.

Member Data Documentation

◆ token_cache

token_t ledger::query_t::lexer_t::token_cache

Definition at line 196 of file query.h.

Referenced by peek_token(), and push_token().


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