C++ Mathematical Expression Toolkit (ExprTk) release
|
#include <exprtk.hpp>
Classes | |
struct | base_func |
struct | func_0param |
struct | func_0param_retval |
struct | func_1param |
struct | func_1param_retval |
struct | func_2param |
struct | func_2param_retval |
struct | func_3param |
struct | func_3param_retval |
struct | func_4param |
struct | func_4param_retval |
struct | func_5param |
struct | func_5param_retval |
struct | func_6param |
struct | func_6param_retval |
struct | function |
struct | scoped_bft |
Public Types | |
typedef exprtk::expression< T > | expression_t |
typedef exprtk::symbol_table< T > | symbol_table_t |
typedef exprtk::parser< T > | parser_t |
typedef parser_t::settings_store | settings_t |
Public Member Functions | |
function_compositor () | |
function_compositor (const symbol_table_t &st) | |
~function_compositor () | |
symbol_table_t & | symbol_table () |
const symbol_table_t & | symbol_table () const |
void | add_auxiliary_symtab (symbol_table_t &symtab) |
void | load_variables (const bool load=true) |
void | load_vectors (const bool load=true) |
void | register_loop_runtime_check (loop_runtime_check &lrtchk) |
void | register_vector_access_runtime_check (vector_access_runtime_check &vartchk) |
void | register_compilation_timeout_check (compilation_check &compchk) |
void | clear_loop_runtime_check () |
void | clear_vector_access_runtime_check () |
void | clear_compilation_timeout_check () |
void | clear () |
bool | add (const function &f, const bool override=false) |
std::string | error () const |
std::size_t | error_count () const |
parser_error::type | get_error (const std::size_t &index) const |
Private Types | |
typedef std::map< std::string, base_func * > | funcparam_t |
typedef const T & | type |
Private Member Functions | |
template<typename Allocator , template< typename, typename > class Sequence> | |
bool | add (const std::string &name, const std::string &expression, const Sequence< std::string, Allocator > &var_list, const bool override=false) |
template<typename Allocator , template< typename, typename > class Sequence> | |
bool | compile_expression (const std::string &name, const std::string &expression, const Sequence< std::string, Allocator > &input_var_list, bool return_present=false) |
bool | symbol_used (const std::string &symbol) const |
bool | valid (const std::string &name, const std::size_t &arg_count) const |
bool | forward (const std::string &name, const std::size_t &arg_count, symbol_table_t &sym_table, const bool ret_present=false) |
void | remove (const std::string &name, const std::size_t &arg_count) |
Static Private Member Functions | |
static T | return_value (expression_t &e) |
Private Attributes | |
symbol_table_t | symbol_table_ |
parser_t | parser_ |
std::map< std::string, expression_t > | expr_map_ |
std::vector< funcparam_t > | fp_map_ |
std::vector< symbol_table_t * > | auxiliary_symtab_list_ |
std::deque< parser_error::type > | error_list_ |
bool | load_variables_ |
bool | load_vectors_ |
Definition at line 42433 of file exprtk.hpp.
typedef exprtk::expression<T> exprtk::function_compositor< T >::expression_t |
Definition at line 42437 of file exprtk.hpp.
|
private |
Definition at line 42869 of file exprtk.hpp.
typedef exprtk::parser<T> exprtk::function_compositor< T >::parser_t |
Definition at line 42439 of file exprtk.hpp.
typedef parser_t::settings_store exprtk::function_compositor< T >::settings_t |
Definition at line 42440 of file exprtk.hpp.
typedef exprtk::symbol_table<T> exprtk::function_compositor< T >::symbol_table_t |
Definition at line 42438 of file exprtk.hpp.
|
private |
Definition at line 42871 of file exprtk.hpp.
|
inline |
Definition at line 43071 of file exprtk.hpp.
|
inlineexplicit |
Definition at line 43079 of file exprtk.hpp.
|
inline |
Definition at line 43088 of file exprtk.hpp.
References exprtk::function_compositor< T >::clear().
|
inline |
Definition at line 43172 of file exprtk.hpp.
References exprtk::function_compositor< T >::add(), exprtk::function_compositor< T >::function::expression_, exprtk::function_compositor< T >::function::name_, and exprtk::function_compositor< T >::function::v_.
|
inlineprivate |
Definition at line 43032 of file exprtk.hpp.
References exprtk::function_compositor< T >::compile_expression(), exprtk::function_compositor< T >::expr_map_, exprtk_debug, exprtk::function_compositor< T >::fp_map_, and exprtk::function_compositor< T >::remove().
Referenced by exprtk::function_compositor< T >::add(), primes_via_naive_method(), and expression_processor< T >::process_function_definition().
|
inline |
Definition at line 43103 of file exprtk.hpp.
References exprtk::function_compositor< T >::auxiliary_symtab_list_.
|
inline |
Definition at line 43148 of file exprtk.hpp.
References exprtk::symbol_table< T >::clear(), exprtk::function_compositor< T >::clear_compilation_timeout_check(), exprtk::function_compositor< T >::clear_loop_runtime_check(), exprtk::function_compositor< T >::clear_vector_access_runtime_check(), exprtk::function_compositor< T >::expr_map_, exprtk::function_compositor< T >::fp_map_, and exprtk::function_compositor< T >::symbol_table_.
Referenced by exprtk::function_compositor< T >::~function_compositor().
|
inline |
Definition at line 43143 of file exprtk.hpp.
References exprtk::parser< T >::clear_compilation_timeout_check(), and exprtk::function_compositor< T >::parser_.
Referenced by exprtk::function_compositor< T >::clear().
|
inline |
Definition at line 43133 of file exprtk.hpp.
References exprtk::parser< T >::clear_loop_runtime_check(), and exprtk::function_compositor< T >::parser_.
Referenced by exprtk::function_compositor< T >::clear().
|
inline |
Definition at line 43138 of file exprtk.hpp.
References exprtk::parser< T >::clear_vector_access_runtime_check(), and exprtk::function_compositor< T >::parser_.
Referenced by exprtk::function_compositor< T >::clear().
|
inlineprivate |
Definition at line 43206 of file exprtk.hpp.
References exprtk::symbol_table< T >::add_constants(), exprtk::symbol_table< T >::add_function(), exprtk::function_compositor< T >::auxiliary_symtab_list_, exprtk::details::back(), exprtk::parser< T >::compile(), exprtk::function_compositor< T >::compile_expression(), exprtk::parser< T >::dec(), exprtk::parser_error::e_parser, exprtk::parser< T >::error(), exprtk::function_compositor< T >::error(), exprtk::parser< T >::error_count(), exprtk::function_compositor< T >::error_list_, exprtk::function_compositor< T >::expr_map_, exprtk_debug, exprtk_error_location, exprtk::function_compositor< T >::forward(), exprtk::function_compositor< T >::fp_map_, exprtk::details::front(), exprtk::parser< T >::get_error(), exprtk::symbol_table< T >::load_from(), exprtk::function_compositor< T >::load_variables_, exprtk::symbol_table< T >::load_variables_from(), exprtk::function_compositor< T >::load_vectors_, exprtk::symbol_table< T >::load_vectors_from(), exprtk::parser_error::make_error(), exprtk::function_compositor< T >::parser_, exprtk::expression< T >::register_symbol_table(), exprtk::function_compositor< T >::remove(), exprtk::parser< T >::dependent_entity_collector::return_param_type_list(), exprtk::parser< T >::dependent_entity_collector::return_present(), exprtk::function_compositor< T >::symbol_table_, and exprtk::function_compositor< T >::valid().
Referenced by exprtk::function_compositor< T >::add(), and exprtk::function_compositor< T >::compile_expression().
|
inline |
Definition at line 43177 of file exprtk.hpp.
References exprtk::function_compositor< T >::error_list_.
Referenced by exprtk::function_compositor< T >::compile_expression().
|
inline |
Definition at line 43187 of file exprtk.hpp.
References exprtk::function_compositor< T >::error_list_.
|
inlineprivate |
Definition at line 43352 of file exprtk.hpp.
References exprtk::symbol_table< T >::add_function(), case_stmt, and exprtk::function_compositor< T >::fp_map_.
Referenced by exprtk::function_compositor< T >::compile_expression().
|
inline |
Definition at line 43192 of file exprtk.hpp.
References exprtk::function_compositor< T >::error_list_.
|
inline |
Definition at line 43108 of file exprtk.hpp.
References exprtk::function_compositor< T >::load_variables_.
|
inline |
Definition at line 43113 of file exprtk.hpp.
References exprtk::function_compositor< T >::load_vectors_.
|
inline |
Definition at line 43128 of file exprtk.hpp.
References exprtk::function_compositor< T >::parser_, and exprtk::parser< T >::register_compilation_timeout_check().
|
inline |
Definition at line 43118 of file exprtk.hpp.
References exprtk::function_compositor< T >::parser_, and exprtk::parser< T >::register_loop_runtime_check().
|
inline |
Definition at line 43123 of file exprtk.hpp.
References exprtk::function_compositor< T >::parser_, and exprtk::parser< T >::register_vector_access_runtime_check().
|
inlineprivate |
Definition at line 43378 of file exprtk.hpp.
References exprtk::function_compositor< T >::expr_map_, exprtk::function_compositor< T >::fp_map_, exprtk::symbol_table< T >::remove_function(), and exprtk::function_compositor< T >::symbol_table_.
Referenced by exprtk::function_compositor< T >::add(), and exprtk::function_compositor< T >::compile_expression().
|
inlinestaticprivate |
Definition at line 42992 of file exprtk.hpp.
|
inline |
Definition at line 43093 of file exprtk.hpp.
References exprtk::function_compositor< T >::symbol_table_.
|
inline |
Definition at line 43098 of file exprtk.hpp.
References exprtk::function_compositor< T >::symbol_table_.
|
inlineprivate |
Definition at line 43328 of file exprtk.hpp.
References exprtk::symbol_table< T >::is_function(), exprtk::symbol_table< T >::is_stringvar(), exprtk::symbol_table< T >::is_vararg_function(), exprtk::symbol_table< T >::is_variable(), exprtk::symbol_table< T >::is_vector(), and exprtk::function_compositor< T >::symbol_table_.
Referenced by exprtk::function_compositor< T >::valid().
|
inlineprivate |
Definition at line 43339 of file exprtk.hpp.
References exprtk::function_compositor< T >::fp_map_, and exprtk::function_compositor< T >::symbol_used().
Referenced by exprtk::function_compositor< T >::compile_expression().
|
private |
Definition at line 43407 of file exprtk.hpp.
Referenced by exprtk::function_compositor< T >::add_auxiliary_symtab(), and exprtk::function_compositor< T >::compile_expression().
|
private |
Definition at line 43408 of file exprtk.hpp.
Referenced by exprtk::function_compositor< T >::compile_expression(), exprtk::function_compositor< T >::error(), exprtk::function_compositor< T >::error_count(), and exprtk::function_compositor< T >::get_error().
|
private |
Definition at line 43405 of file exprtk.hpp.
Referenced by exprtk::function_compositor< T >::add(), exprtk::function_compositor< T >::clear(), exprtk::function_compositor< T >::compile_expression(), and exprtk::function_compositor< T >::remove().
|
private |
Definition at line 43406 of file exprtk.hpp.
Referenced by exprtk::function_compositor< T >::add(), exprtk::function_compositor< T >::clear(), exprtk::function_compositor< T >::compile_expression(), exprtk::function_compositor< T >::forward(), exprtk::function_compositor< T >::remove(), and exprtk::function_compositor< T >::valid().
|
private |
Definition at line 43409 of file exprtk.hpp.
Referenced by exprtk::function_compositor< T >::compile_expression(), and exprtk::function_compositor< T >::load_variables().
|
private |
Definition at line 43410 of file exprtk.hpp.
Referenced by exprtk::function_compositor< T >::compile_expression(), and exprtk::function_compositor< T >::load_vectors().
|
private |
Definition at line 43404 of file exprtk.hpp.
Referenced by exprtk::function_compositor< T >::clear_compilation_timeout_check(), exprtk::function_compositor< T >::clear_loop_runtime_check(), exprtk::function_compositor< T >::clear_vector_access_runtime_check(), exprtk::function_compositor< T >::compile_expression(), exprtk::function_compositor< T >::register_compilation_timeout_check(), exprtk::function_compositor< T >::register_loop_runtime_check(), and exprtk::function_compositor< T >::register_vector_access_runtime_check().
|
private |
Definition at line 43403 of file exprtk.hpp.
Referenced by exprtk::function_compositor< T >::clear(), exprtk::function_compositor< T >::compile_expression(), exprtk::function_compositor< T >::remove(), exprtk::function_compositor< T >::symbol_table(), exprtk::function_compositor< T >::symbol_table(), and exprtk::function_compositor< T >::symbol_used().