exprtk::parser< T > Class Template Reference

#include <exprtk.hpp>

Inheritance diagram for exprtk::parser< T >:
Inheritance graph
[legend]
Collaboration diagram for exprtk::parser< T >:
Collaboration graph
[legend]

List of all members.

Classes

class  dependent_entity_collector
class  expression_generator
struct  parse_special_function_impl
struct  parser_state
struct  scope_element
class  scope_element_manager
class  scope_handler
struct  scoped_bool_negator
struct  scoped_bool_or_restorer
struct  scoped_delete
struct  scoped_deq_delete
struct  scoped_vec_delete
class  settings_store
struct  state_t
struct  symtab_store
class  type_checker
struct  unknown_symbol_resolver

Public Types

enum  collect_type { e_ct_none = 0, e_ct_variables = 1, e_ct_functions = 2, e_ct_assignments = 4 }
enum  symbol_type {
  e_st_unknown = 0, e_st_variable = 1, e_st_vector = 2, e_st_string = 3,
  e_st_function = 4, e_st_local_variable = 5, e_st_local_vector = 6, e_st_local_string = 7
}
typedef settings_store settings_t

Public Member Functions

 parser (const settings_t &settings=settings_t())
 ~parser ()
void init_precompilation ()
bool compile (const std::string &expression_string, expression< T > &expr)
void process_lexer_errors ()
bool run_assemblies ()
settings_storesettings ()
parser_error::type get_error (const std::size_t &index)
std::string error () const
std::size_t error_count () const
dependent_entity_collectordec ()
bool replace_symbol (const std::string &old_symbol, const std::string &new_symbol)
bool remove_replace_symbol (const std::string &symbol)
void enable_unknown_symbol_resolver (unknown_symbol_resolver *usr=reinterpret_cast< unknown_symbol_resolver * >(0))
void disable_unknown_symbol_resolver ()

template<typename T>
class exprtk::parser< T >


Member Typedef Documentation

template<typename T>
typedef settings_store exprtk::parser< T >::settings_t

Member Enumeration Documentation

template<typename T>
enum exprtk::parser::collect_type
Enumerator:
e_ct_none 
e_ct_variables 
e_ct_functions 
e_ct_assignments 
template<typename T>
enum exprtk::parser::symbol_type
Enumerator:
e_st_unknown 
e_st_variable 
e_st_vector 
e_st_string 
e_st_function 
e_st_local_variable 
e_st_local_vector 
e_st_local_string 

Constructor & Destructor Documentation

template<typename T>
exprtk::parser< T >::parser ( const settings_t settings = settings_t()  )  [inline]
template<typename T>
exprtk::parser< T >::~parser (  )  [inline]

Member Function Documentation

template<typename T>
bool exprtk::parser< T >::compile ( const std::string &  expression_string,
expression< T > &  expr 
) [inline]

Here is the caller graph for this function:

template<typename T>
dependent_entity_collector& exprtk::parser< T >::dec (  )  [inline]
template<typename T>
void exprtk::parser< T >::disable_unknown_symbol_resolver (  )  [inline]
template<typename T>
void exprtk::parser< T >::enable_unknown_symbol_resolver ( unknown_symbol_resolver usr = reinterpret_cast<unknown_symbol_resolver*>(0)  )  [inline]
template<typename T>
std::string exprtk::parser< T >::error (  )  const [inline]
template<typename T>
std::size_t exprtk::parser< T >::error_count (  )  const [inline]
template<typename T>
parser_error::type exprtk::parser< T >::get_error ( const std::size_t &  index  )  [inline]
template<typename T>
void exprtk::parser< T >::init_precompilation (  )  [inline]
template<typename T>
void exprtk::parser< T >::process_lexer_errors (  )  [inline]
template<typename T>
bool exprtk::parser< T >::remove_replace_symbol ( const std::string &  symbol  )  [inline]
template<typename T>
bool exprtk::parser< T >::replace_symbol ( const std::string &  old_symbol,
const std::string &  new_symbol 
) [inline]
template<typename T>
bool exprtk::parser< T >::run_assemblies (  )  [inline]
template<typename T>
settings_store& exprtk::parser< T >::settings (  )  [inline]

The documentation for this class was generated from the following file:
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Defines

Generated on 3 Jun 2020 for ModFEM by  doxygen 1.6.1