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

#include <query.h>

Classes

class  lexer_t
 
class  parser_t
 

Public Types

enum  kind_t {
  QUERY_LIMIT , QUERY_SHOW , QUERY_ONLY , QUERY_BOLD ,
  QUERY_FOR
}
 
typedef std::map< kind_t, stringquery_map_t
 

Public Member Functions

string get_query (const kind_t &id) const
 
bool has_query (const kind_t &id) const
 
expr_t::ptr_op_t parse_args (const value_t &args, const keep_details_t &what_to_keep=keep_details_t(), bool multiple_args=true, bool subexpression=false)
 
 query_t ()
 
 query_t (const query_t &other)
 
 query_t (const string &arg, const keep_details_t &what_to_keep=keep_details_t(), bool multiple_args=true)
 
 query_t (const value_t &args, const keep_details_t &what_to_keep=keep_details_t(), bool multiple_args=true)
 
bool tokens_remaining ()
 
virtual ~query_t ()
 

Protected Attributes

optional< parser_tparser
 
query_map_t predicates
 

Detailed Description

Definition at line 48 of file query.h.

Member Typedef Documentation

◆ query_map_t

Definition at line 246 of file query.h.

Member Enumeration Documentation

◆ kind_t

Enumerator
QUERY_LIMIT 
QUERY_SHOW 
QUERY_ONLY 
QUERY_BOLD 
QUERY_FOR 

Definition at line 238 of file query.h.

Constructor & Destructor Documentation

◆ query_t() [1/4]

ledger::query_t::query_t ( )
inline

Definition at line 296 of file query.h.

References TRACE_CTOR.

◆ query_t() [2/4]

ledger::query_t::query_t ( const query_t & other)
inline

Definition at line 299 of file query.h.

References TRACE_CTOR.

◆ query_t() [3/4]

ledger::query_t::query_t ( const string & arg,
const keep_details_t & what_to_keep = keep_details_t(),
bool multiple_args = true )
inline

Definition at line 303 of file query.h.

References ledger::downcast(), parse_args(), ledger::string_value(), and TRACE_CTOR.

+ Here is the call graph for this function:

◆ query_t() [4/4]

ledger::query_t::query_t ( const value_t & args,
const keep_details_t & what_to_keep = keep_details_t(),
bool multiple_args = true )
inline

Definition at line 312 of file query.h.

References ledger::value_t::empty(), parse_args(), and TRACE_CTOR.

+ Here is the call graph for this function:

◆ ~query_t()

virtual ledger::query_t::~query_t ( )
inlinevirtual

Definition at line 320 of file query.h.

References TRACE_DTOR.

Member Function Documentation

◆ get_query()

string ledger::query_t::get_query ( const kind_t & id) const
inline

Definition at line 337 of file query.h.

References ledger::downcast(), ledger::empty_string, and parser.

+ Here is the call graph for this function:

◆ has_query()

bool ledger::query_t::has_query ( const kind_t & id) const
inline

Definition at line 334 of file query.h.

References parser.

◆ parse_args()

expr_t::ptr_op_t ledger::query_t::parse_args ( const value_t & args,
const keep_details_t & what_to_keep = keep_details_t(),
bool multiple_args = true,
bool subexpression = false )
inline

Definition at line 325 of file query.h.

References ledger::downcast(), and parser.

Referenced by query_t(), and query_t().

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

◆ tokens_remaining()

bool ledger::query_t::tokens_remaining ( )
inline

Definition at line 346 of file query.h.

References parser.

Member Data Documentation

◆ parser

optional<parser_t> ledger::query_t::parser
protected

Definition at line 292 of file query.h.

Referenced by get_query(), has_query(), parse_args(), and tokens_remaining().

◆ predicates

query_map_t ledger::query_t::predicates
protected

Definition at line 293 of file query.h.


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