#include <expr.h>
Public Types | |
| enum | check_expr_kind_t { EXPR_GENERAL , EXPR_ASSERTION , EXPR_CHECK } |
| typedef std::list< check_expr_pair > | check_expr_list |
| typedef std::pair< expr_t, check_expr_kind_t > | check_expr_pair |
| typedef intrusive_ptr< const op_t > | const_ptr_op_t |
| typedef function< result_type(call_scope_t &)> | func_t |
| typedef intrusive_ptr< op_t > | ptr_op_t |
| typedef value_t | result_type |
Public Member Functions | |
| void | append (const string &expr) |
| result_type | calc () |
| result_type | calc (scope_t &scope) |
| bool | check_for_single_identifier (const string &expr) |
| virtual void | compile (scope_t &scope) |
| value_t & | constant_value () |
| const value_t & | constant_value () const |
| virtual string | context_to_str () const |
| virtual void | dump (std::ostream &out) const |
| string | dump_to_str () const |
| scope_t * | get_context () |
| func_t & | get_function () |
| ptr_op_t | get_op () throw () |
| bool | is_constant () const |
| bool | is_function () const |
| virtual void | mark_uncompiled () |
| merged_expr_t (const string &_term, const string &expr, const string &merge_op=";") | |
| virtual | operator bool () const throw () |
| result_type | operator() (scope_t &scope) |
| void | parse (const string &str, const parse_flags_t &flags=PARSE_DEFAULT) |
| virtual void | parse (std::istream &in, const parse_flags_t &flags=PARSE_DEFAULT, const optional< string > &original_string=none) |
| void | prepend (const string &expr) |
| result_type | preview (std::ostream &out, scope_t &scope) const |
| string | preview_to_str (scope_t &) const |
| virtual void | print (std::ostream &out) const |
| string | print_to_str () const |
| virtual value_t | real_calc (scope_t &scope) |
| void | recompile (scope_t &scope) |
| void | remove (const string &expr) |
| void | set_base_expr (const string &expr) |
| void | set_context (scope_t *scope) |
| void | set_merge_operator (const string &merge_op) |
| void | set_term (const string &_term) |
| void | set_text (const string &txt) |
| virtual string | text () const throw () |
| virtual | ~merged_expr_t () |
Public Attributes | |
| string | base_expr |
| std::list< string > | exprs |
| string | merge_operator |
| string | term |
Protected Attributes | |
| bool | compiled |
| scope_t * | context |
| ptr_op_t | ptr |
| string | str |
|
inherited |
|
inherited |
|
inherited |
|
inherited |
Definition at line 75 of file exprbase.h.
|
inherited |
|
inherited |
Definition at line 73 of file exprbase.h.
|
inherited |
|
inline |
Definition at line 146 of file expr.h.
References base_expr, ledger::expr_t::expr_t(), merge_operator, merged_expr_t(), term, and TRACE_CTOR.
Referenced by merged_expr_t(), and ~merged_expr_t().
|
inlinevirtual |
Definition at line 151 of file expr.h.
References merged_expr_t(), and TRACE_DTOR.
|
inline |
Definition at line 171 of file expr.h.
References check_for_single_identifier(), and exprs.
|
inlineinherited |
Definition at line 180 of file exprbase.h.
References assert, ledger::expr_base_t< ResultType >::calc(), and context.
|
inlineinherited |
Definition at line 155 of file exprbase.h.
References ledger::_log_stream, ledger::expr_base_t< ResultType >::compile(), compiled, DEBUG, ledger::expr_base_t< ResultType >::dump(), ledger::expr_base_t< ResultType >::real_calc(), SHOW_DEBUG, and str.
| bool ledger::merged_expr_t::check_for_single_identifier | ( | const string & | expr | ) |
|
virtual |
Reimplemented from ledger::expr_t.
|
inherited |
|
inherited |
|
virtualinherited |
Reimplemented from ledger::expr_base_t< value_t >.
|
virtualinherited |
Reimplemented from ledger::expr_base_t< value_t >.
|
inlineinherited |
Definition at line 201 of file exprbase.h.
References ledger::expr_base_t< ResultType >::dump().
|
inlineinherited |
Definition at line 185 of file exprbase.h.
References context.
|
inherited |
|
inherited | ||||||||||||
|
inherited |
|
inherited |
|
inlinevirtualinherited |
Definition at line 134 of file exprbase.h.
References compiled.
|
virtualinherited | ||||||||||||
Reimplemented from ledger::expr_base_t< value_t >.
|
inlineinherited |
Definition at line 151 of file exprbase.h.
References ledger::expr_base_t< ResultType >::calc().
|
inlineinherited |
Definition at line 88 of file expr.h.
References parse(), ledger::PARSE_DEFAULT, and ledger::expr_base_t< value_t >::str.
Referenced by parse().
|
virtualinherited |
Reimplemented from ledger::expr_base_t< value_t >.
References ledger::PARSE_DEFAULT.
|
inline |
Definition at line 167 of file expr.h.
References check_for_single_identifier(), and exprs.
|
inlineinherited |
Definition at line 215 of file exprbase.h.
References ledger::expr_base_t< ResultType >::calc(), ledger::expr_base_t< ResultType >::compile(), ledger::expr_base_t< ResultType >::dump(), ledger::expr_base_t< ResultType >::print(), and ledger::expr_base_t< ResultType >::text().
|
inlineinherited |
Definition at line 206 of file exprbase.h.
References ledger::expr_base_t< ResultType >::preview().
|
virtualinherited |
Reimplemented from ledger::expr_base_t< value_t >.
|
inlineinherited |
Definition at line 196 of file exprbase.h.
References ledger::expr_base_t< ResultType >::print().
Implements ledger::expr_base_t< value_t >.
Reimplemented in ledger::predicate_t.
Referenced by ledger::predicate_t::real_calc().
|
inlineinherited |
Definition at line 138 of file exprbase.h.
References ledger::expr_base_t< ResultType >::compile(), and compiled.
|
inline |
|
inline |
|
inlineinherited |
Definition at line 188 of file exprbase.h.
References context.
|
inline |
Definition at line 161 of file expr.h.
References merge_operator.
|
inline |
|
inlineinherited |
Definition at line 118 of file exprbase.h.
|
inlinevirtualinherited | ||||||||||||
Definition at line 115 of file exprbase.h.
References str.
| string ledger::merged_expr_t::base_expr |
Definition at line 141 of file expr.h.
Referenced by merged_expr_t(), and set_base_expr().
|
protectedinherited |
Definition at line 80 of file exprbase.h.
Referenced by calc(), compile(), expr_base_t(), expr_base_t(), mark_uncompiled(), operator=(), recompile(), and set_text().
|
protectedinherited |
Definition at line 78 of file exprbase.h.
Referenced by calc(), compile(), expr_base_t(), expr_base_t(), get_context(), operator=(), ledger::expr_t::op_t::print(), and set_context().
| std::list<string> ledger::merged_expr_t::exprs |
| string ledger::merged_expr_t::merge_operator |
Definition at line 142 of file expr.h.
Referenced by merged_expr_t(), and set_merge_operator().
|
protectedinherited |
Definition at line 79 of file exprbase.h.
Referenced by calc(), expr_base_t(), operator bool(), operator=(), ledger::expr_t::parse(), ledger::predicate_t::predicate_t(), set_text(), and text().
| string ledger::merged_expr_t::term |
Definition at line 140 of file expr.h.
Referenced by merged_expr_t(), and set_term().