Classes | Public Types | Public Member Functions | Private Member Functions | Private Attributes
exprtk::parser< T >::expression_generator< Type > Class Template Reference

List of all members.

Classes

struct  synthesize_binary_ext_expression
struct  synthesize_boc_expression
struct  synthesize_bov_expression
struct  synthesize_cob_expression
struct  synthesize_cocov_expression0
struct  synthesize_cocov_expression1
struct  synthesize_cov_expression
struct  synthesize_covoc_expression0
struct  synthesize_covoc_expression1
struct  synthesize_covocov_expression0
struct  synthesize_covocov_expression1
struct  synthesize_covocov_expression2
struct  synthesize_covocov_expression3
struct  synthesize_covocov_expression4
struct  synthesize_covov_expression0
struct  synthesize_covov_expression1
struct  synthesize_covovoc_expression0
struct  synthesize_covovoc_expression1
struct  synthesize_covovoc_expression2
struct  synthesize_covovoc_expression3
struct  synthesize_covovoc_expression4
struct  synthesize_covovov_expression0
struct  synthesize_covovov_expression1
struct  synthesize_covovov_expression2
struct  synthesize_covovov_expression3
struct  synthesize_covovov_expression4
struct  synthesize_sf3ext_expression
struct  synthesize_sf4ext_expression
struct  synthesize_vob_expression
struct  synthesize_voc_expression
struct  synthesize_vococ_expression0
struct  synthesize_vococ_expression1
struct  synthesize_vococov_expression0
struct  synthesize_vococov_expression1
struct  synthesize_vococov_expression2
struct  synthesize_vococov_expression3
struct  synthesize_vococov_expression4
struct  synthesize_vocov_expression0
struct  synthesize_vocov_expression1
struct  synthesize_vocovoc_expression0
struct  synthesize_vocovoc_expression1
struct  synthesize_vocovoc_expression2
struct  synthesize_vocovoc_expression3
struct  synthesize_vocovoc_expression4
struct  synthesize_vocovov_expression0
struct  synthesize_vocovov_expression1
struct  synthesize_vocovov_expression2
struct  synthesize_vocovov_expression3
struct  synthesize_vocovov_expression4
struct  synthesize_vov_expression
struct  synthesize_vovoc_expression0
struct  synthesize_vovoc_expression1
struct  synthesize_vovocov_expression0
struct  synthesize_vovocov_expression1
struct  synthesize_vovocov_expression2
struct  synthesize_vovocov_expression3
struct  synthesize_vovocov_expression4
struct  synthesize_vovov_expression0
struct  synthesize_vovov_expression1
struct  synthesize_vovovoc_expression0
struct  synthesize_vovovoc_expression1
struct  synthesize_vovovoc_expression2
struct  synthesize_vovovoc_expression3
struct  synthesize_vovovoc_expression4
struct  synthesize_vovovov_expression0
struct  synthesize_vovovov_expression1
struct  synthesize_vovovov_expression2
struct  synthesize_vovovov_expression3
struct  synthesize_vovovov_expression4

Public Types

typedef const Type ctype
typedef
details::expression_node< Type > * 
expression_node_ptr
typedef exprtk::parser< Type > parser_t
typedef expression_node_ptr(* synthesize_functor_t )(expression_generator< T > &, const details::operator_type &operation, expression_node_ptr(&branch)[2])
typedef std::map< std::string,
synthesize_functor_t
synthesize_map_t
typedef const Type & vtype

Public Member Functions

bool binext_optimizable (const details::operator_type &operation, expression_node_ptr(&branch)[2]) const
bool boc_optimizable (const details::operator_type &operation, expression_node_ptr(&branch)[2]) const
bool bov_optimizable (const details::operator_type &operation, expression_node_ptr(&branch)[2]) const
std::string branch_to_id (expression_node_ptr branch)
std::string branch_to_id (expression_node_ptr(&branch)[2])
bool cob_optimizable (const details::operator_type &operation, expression_node_ptr(&branch)[2]) const
expression_node_ptr conditional (expression_node_ptr condition, expression_node_ptr consequent, expression_node_ptr alternative) const
template<typename Allocator , template< typename, typename > class Sequence>
expression_node_ptr const_optimize_mswitch (Sequence< expression_node_ptr, Allocator > &arglist)
expression_node_ptr const_optimize_sf3 (const details::operator_type &operation, expression_node_ptr(&branch)[3])
expression_node_ptr const_optimize_sf4 (const details::operator_type &operation, expression_node_ptr(&branch)[4])
template<typename Allocator , template< typename, typename > class Sequence>
expression_node_ptr const_optimize_switch (Sequence< expression_node_ptr, Allocator > &arglist)
template<typename Allocator , template< typename, typename > class Sequence>
expression_node_ptr const_optimize_varargfunc (const details::operator_type &operation, Sequence< expression_node_ptr, Allocator > &arglist)
bool cov_optimizable (const details::operator_type &operation, expression_node_ptr(&branch)[2]) const
expression_node_ptr for_loop (expression_node_ptr initializer, expression_node_ptr condition, expression_node_ptr incrementor, expression_node_ptr loop_body, expression_node_ptr loop_var, T *loop_counter, bool brkcont=false) const
template<std::size_t N>
expression_node_ptr function (ifunction_t *f, expression_node_ptr(&b)[N])
expression_node_ptr function (ifunction_t *f)
details::operator_type get_operator (const binary_functor_t &bop)
void init_synthesize_map ()
bool is_assignment_operation (const details::operator_type &operation) const
bool is_invalid_assignment_op (const details::operator_type &operation, expression_node_ptr(&branch)[2])
bool is_invalid_break_continue_op (expression_node_ptr(&branch)[2])
bool is_invalid_string_op (const details::operator_type &operation, expression_node_ptr(&branch)[2])
bool is_invalid_string_op (const details::operator_type &operation, expression_node_ptr(&branch)[3])
bool is_null_present (expression_node_ptr(&branch)[2])
bool is_shortcircuit_expression (const details::operator_type &operation)
bool is_string_operation (const details::operator_type &operation, expression_node_ptr(&branch)[2])
bool is_string_operation (const details::operator_type &operation, expression_node_ptr(&branch)[3])
template<typename Allocator , template< typename, typename > class Sequence>
expression_node_ptr multi_switch_statement (Sequence< expression_node_ptr, Allocator > &arglist)
bool operation_optimizable (const details::operator_type &operation) const
expression_node_ptr operator() (const Type &v) const
expression_node_ptr operator() (const std::string &s) const
expression_node_ptr operator() (std::string &s, range_pack &rp) const
expression_node_ptr operator() (const std::string &s, range_pack &rp) const
expression_node_ptr operator() (const details::operator_type &operation, expression_node_ptr(&branch)[1])
expression_node_ptr operator() (const details::operator_type &operation, expression_node_ptr(&branch)[2])
expression_node_ptr operator() (const details::operator_type &operation, expression_node_ptr(&branch)[3])
expression_node_ptr operator() (const details::operator_type &operation, expression_node_ptr(&branch)[4])
expression_node_ptr operator() (const details::operator_type &operation, expression_node_ptr(&branch)[5])
expression_node_ptr operator() (const details::operator_type &operation, expression_node_ptr(&branch)[6])
expression_node_ptr operator() (const details::operator_type &operation, expression_node_ptr b0)
expression_node_ptr operator() (const details::operator_type &operation, expression_node_ptr b0, expression_node_ptr b1)
expression_node_ptr repeat_until_loop (expression_node_ptr condition, expression_node_ptr branch, const bool brkcont=false) const
void set_allocator (details::node_allocator &na)
void set_bom (binary_op_map_t &binary_op_map)
void set_ibom (inv_binary_op_map_t &inv_binary_op_map)
void set_parser (parser_t &p)
void set_sf3m (sf3_map_t &sf3_map)
void set_sf4m (sf4_map_t &sf4_map)
void set_strength_reduction_state (const bool strength_reduction_enabled)
void set_uom (unary_op_map_t &unary_op_map)
bool sf3_optimizable (const std::string &sf3id, trinary_functor_t &tfunc)
bool sf3_optimizable (const std::string &sf3id, details::operator_type &operation)
bool sf4_optimizable (const std::string &sf4id, quaternary_functor_t &qfunc)
bool sf4_optimizable (const std::string &sf4id, details::operator_type &operation)
expression_node_ptr special_function (const details::operator_type &operation, expression_node_ptr(&branch)[3])
expression_node_ptr special_function (const details::operator_type &operation, expression_node_ptr(&branch)[4])
bool special_one_parameter_vararg (const details::operator_type &operation)
bool strength_reduction_enabled () const
template<typename Allocator , template< typename, typename > class Sequence>
expression_node_ptr switch_statement (Sequence< expression_node_ptr, Allocator > &arglist)
expression_node_ptr synthesize_unary_expression (const details::operator_type &operation, expression_node_ptr(&branch)[1])
expression_node_ptr synthesize_uv_expression (const details::operator_type &operation, expression_node_ptr(&branch)[1])
std::string to_str (const details::operator_type &operation) const
bool unary_optimizable (const details::operator_type &operation) const
bool uvouv_optimizable (const details::operator_type &operation, expression_node_ptr(&branch)[2]) const
bool valid_operator (const details::operator_type &operation, binary_functor_t &bop)
bool valid_operator (const details::operator_type &operation, unary_functor_t &uop)
bool valid_string_operation (const details::operator_type &operation) const
template<typename Allocator , template< typename, typename > class Sequence>
expression_node_ptr vararg_function (const details::operator_type &operation, Sequence< expression_node_ptr, Allocator > &arglist)
expression_node_ptr vararg_function_call (ivararg_function_t *vaf, std::vector< expression_node_ptr > &arglist)
expression_node_ptr varnode_optimize_sf3 (const details::operator_type &operation, expression_node_ptr(&branch)[3])
expression_node_ptr varnode_optimize_sf4 (const details::operator_type &operation, expression_node_ptr(&branch)[4])
template<typename Allocator , template< typename, typename > class Sequence>
expression_node_ptr varnode_optimize_varargfunc (const details::operator_type &operation, Sequence< expression_node_ptr, Allocator > &arglist)
expression_node_ptr vector_element (const std::string &symbol, typename symbol_table_t::vector_ptr vector_base, expression_node_ptr index)
bool vob_optimizable (const details::operator_type &operation, expression_node_ptr(&branch)[2]) const
bool voc_optimizable (const details::operator_type &operation, expression_node_ptr(&branch)[2]) const
bool vov_optimizable (const details::operator_type &operation, expression_node_ptr(&branch)[2]) const
expression_node_ptr while_loop (expression_node_ptr condition, expression_node_ptr branch, const bool brkcont=false) const

Private Member Functions

bool cardinal_pow_optimizable (const details::operator_type &operation, const T &c)
expression_node_ptr cardinal_pow_optimization (const T &v, const T &c)
template<template< typename, typename > class IPowNode>
expression_node_ptr cardinal_pow_optimization_impl (const T &v, const unsigned int &p)
template<std::size_t N, typename NodePtr >
bool is_constant_foldable (NodePtr(&b)[N]) const
template<typename NodePtr , typename Allocator , template< typename, typename > class Sequence>
bool is_constant_foldable (const Sequence< NodePtr, Allocator > &b) const
expression_node_ptr synthesize_assignment_expression (const details::operator_type &operation, expression_node_ptr(&branch)[2])
expression_node_ptr synthesize_assignment_operation_expression (const details::operator_type &operation, expression_node_ptr(&branch)[2])
expression_node_ptr synthesize_csocs_expression (const details::operator_type &opr, expression_node_ptr(&branch)[2])
expression_node_ptr synthesize_csocsr_expression (const details::operator_type &opr, expression_node_ptr(&branch)[2])
expression_node_ptr synthesize_csos_expression (const details::operator_type &opr, expression_node_ptr(&branch)[2])
expression_node_ptr synthesize_csosr_expression (const details::operator_type &opr, expression_node_ptr(&branch)[2])
expression_node_ptr synthesize_csrocs_expression (const details::operator_type &opr, expression_node_ptr(&branch)[2])
expression_node_ptr synthesize_csrocsr_expression (const details::operator_type &opr, expression_node_ptr(&branch)[2])
expression_node_ptr synthesize_csros_expression (const details::operator_type &opr, expression_node_ptr(&branch)[2])
expression_node_ptr synthesize_csrosr_expression (const details::operator_type &opr, expression_node_ptr(&branch)[2])
bool synthesize_expression (const details::operator_type &operation, expression_node_ptr(&branch)[2], expression_node_ptr &result)
template<typename NodeType , std::size_t N>
expression_node_ptr synthesize_expression (const details::operator_type &operation, expression_node_ptr(&branch)[N])
template<typename NodeType , std::size_t N>
expression_node_ptr synthesize_expression (F *f, expression_node_ptr(&branch)[N])
expression_node_ptr synthesize_null_expression (const details::operator_type &operation, expression_node_ptr(&branch)[2])
expression_node_ptr synthesize_shortcircuit_expression (const details::operator_type &operation, expression_node_ptr(&branch)[2])
expression_node_ptr synthesize_socs_expression (const details::operator_type &opr, expression_node_ptr(&branch)[2])
expression_node_ptr synthesize_socsr_expression (const details::operator_type &opr, expression_node_ptr(&branch)[2])
expression_node_ptr synthesize_sos_expression (const details::operator_type &opr, expression_node_ptr(&branch)[2])
template<typename T0 , typename T1 >
expression_node_ptr synthesize_sos_expression_impl (const details::operator_type &opr, T0 s0, T1 s1)
expression_node_ptr synthesize_sosr_expression (const details::operator_type &opr, expression_node_ptr(&branch)[2])
expression_node_ptr synthesize_srocs_expression (const details::operator_type &opr, expression_node_ptr(&branch)[2])
expression_node_ptr synthesize_srocsr_expression (const details::operator_type &opr, expression_node_ptr(&branch)[2])
expression_node_ptr synthesize_sros_expression (const details::operator_type &opr, expression_node_ptr(&branch)[2])
expression_node_ptr synthesize_srosr_expression (const details::operator_type &opr, expression_node_ptr(&branch)[2])
template<typename T0 , typename T1 >
expression_node_ptr synthesize_str_xoxr_expression_impl (const details::operator_type &opr, T0 s0, T1 s1, range_pack rp1)
template<typename T0 , typename T1 >
expression_node_ptr synthesize_str_xrox_expression_impl (const details::operator_type &opr, T0 s0, T1 s1, range_pack rp0)
template<typename T0 , typename T1 >
expression_node_ptr synthesize_str_xroxr_expression_impl (const details::operator_type &opr, T0 s0, T1 s1, range_pack rp0, range_pack rp1)
expression_node_ptr synthesize_string_expression (const details::operator_type &opr, expression_node_ptr(&branch)[2])
expression_node_ptr synthesize_string_expression (const details::operator_type &opr, expression_node_ptr(&branch)[3])
expression_node_ptr synthesize_uvouv_expression (const details::operator_type &operation, expression_node_ptr(&branch)[2])

Private Attributes

binary_op_map_tbinary_op_map_
inv_binary_op_map_tinv_binary_op_map_
details::node_allocatornode_allocator_
parser_tparser_
sf3_map_tsf3_map_
sf4_map_tsf4_map_
bool strength_reduction_enabled_
synthesize_map_t synthesize_map_
unary_op_map_tunary_op_map_

Detailed Description

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

Definition at line 14013 of file exprtk.hpp.


Member Typedef Documentation

template<typename T>
template<typename Type>
typedef const Type exprtk::parser< T >::expression_generator< Type >::ctype

Definition at line 14022 of file exprtk.hpp.

template<typename T>
template<typename Type>
typedef details::expression_node<Type>* exprtk::parser< T >::expression_generator< Type >::expression_node_ptr

Definition at line 14017 of file exprtk.hpp.

template<typename T>
template<typename Type>
typedef exprtk::parser<Type> exprtk::parser< T >::expression_generator< Type >::parser_t

Definition at line 14020 of file exprtk.hpp.

template<typename T>
template<typename Type>
typedef expression_node_ptr(* exprtk::parser< T >::expression_generator< Type >::synthesize_functor_t)(expression_generator< T > &, const details::operator_type &operation, expression_node_ptr(&branch)[2])

Definition at line 14018 of file exprtk.hpp.

template<typename T>
template<typename Type>
typedef std::map<std::string,synthesize_functor_t> exprtk::parser< T >::expression_generator< Type >::synthesize_map_t

Definition at line 14019 of file exprtk.hpp.

template<typename T>
template<typename Type>
typedef const Type& exprtk::parser< T >::expression_generator< Type >::vtype

Definition at line 14021 of file exprtk.hpp.


Member Function Documentation

template<typename T>
template<typename Type>
bool exprtk::parser< T >::expression_generator< Type >::binext_optimizable ( const details::operator_type operation,
expression_node_ptr(&)  branch[2] 
) const [inline]

Definition at line 14453 of file exprtk.hpp.

template<typename T>
template<typename Type>
bool exprtk::parser< T >::expression_generator< Type >::boc_optimizable ( const details::operator_type operation,
expression_node_ptr(&)  branch[2] 
) const [inline]

Definition at line 14421 of file exprtk.hpp.

template<typename T>
template<typename Type>
bool exprtk::parser< T >::expression_generator< Type >::bov_optimizable ( const details::operator_type operation,
expression_node_ptr(&)  branch[2] 
) const [inline]

Definition at line 14445 of file exprtk.hpp.

template<typename T>
template<typename Type>
std::string exprtk::parser< T >::expression_generator< Type >::branch_to_id ( expression_node_ptr  branch) [inline]

Definition at line 14343 of file exprtk.hpp.

template<typename T>
template<typename Type>
std::string exprtk::parser< T >::expression_generator< Type >::branch_to_id ( expression_node_ptr(&)  branch[2]) [inline]

Definition at line 14384 of file exprtk.hpp.

template<typename T>
template<typename Type>
bool exprtk::parser< T >::expression_generator< Type >::cardinal_pow_optimizable ( const details::operator_type operation,
const T c 
) [inline, private]

Definition at line 15630 of file exprtk.hpp.

template<typename T>
template<typename Type>
expression_node_ptr exprtk::parser< T >::expression_generator< Type >::cardinal_pow_optimization ( const T v,
const T c 
) [inline, private]

Definition at line 15610 of file exprtk.hpp.

template<typename T>
template<typename Type>
template<template< typename, typename > class IPowNode>
expression_node_ptr exprtk::parser< T >::expression_generator< Type >::cardinal_pow_optimization_impl ( const T v,
const unsigned int &  p 
) [inline, private]

Definition at line 15582 of file exprtk.hpp.

template<typename T>
template<typename Type>
bool exprtk::parser< T >::expression_generator< Type >::cob_optimizable ( const details::operator_type operation,
expression_node_ptr(&)  branch[2] 
) const [inline]

Definition at line 14413 of file exprtk.hpp.

template<typename T>
template<typename Type>
expression_node_ptr exprtk::parser< T >::expression_generator< Type >::conditional ( expression_node_ptr  condition,
expression_node_ptr  consequent,
expression_node_ptr  alternative 
) const [inline]

Definition at line 14639 of file exprtk.hpp.

template<typename T>
template<typename Type>
template<typename Allocator , template< typename, typename > class Sequence>
expression_node_ptr exprtk::parser< T >::expression_generator< Type >::const_optimize_mswitch ( Sequence< expression_node_ptr, Allocator > &  arglist) [inline]

Definition at line 14830 of file exprtk.hpp.

template<typename T>
template<typename Type>
expression_node_ptr exprtk::parser< T >::expression_generator< Type >::const_optimize_sf3 ( const details::operator_type operation,
expression_node_ptr(&)  branch[3] 
) [inline]

Definition at line 14964 of file exprtk.hpp.

template<typename T>
template<typename Type>
expression_node_ptr exprtk::parser< T >::expression_generator< Type >::const_optimize_sf4 ( const details::operator_type operation,
expression_node_ptr(&)  branch[4] 
) [inline]

Definition at line 15098 of file exprtk.hpp.

template<typename T>
template<typename Type>
template<typename Allocator , template< typename, typename > class Sequence>
expression_node_ptr exprtk::parser< T >::expression_generator< Type >::const_optimize_switch ( Sequence< expression_node_ptr, Allocator > &  arglist) [inline]

Definition at line 14794 of file exprtk.hpp.

template<typename T>
template<typename Type>
template<typename Allocator , template< typename, typename > class Sequence>
expression_node_ptr exprtk::parser< T >::expression_generator< Type >::const_optimize_varargfunc ( const details::operator_type operation,
Sequence< expression_node_ptr, Allocator > &  arglist 
) [inline]

Definition at line 15233 of file exprtk.hpp.

template<typename T>
template<typename Type>
bool exprtk::parser< T >::expression_generator< Type >::cov_optimizable ( const details::operator_type operation,
expression_node_ptr(&)  branch[2] 
) const [inline]

Definition at line 14389 of file exprtk.hpp.

template<typename T>
template<typename Type>
expression_node_ptr exprtk::parser< T >::expression_generator< Type >::for_loop ( expression_node_ptr  initializer,
expression_node_ptr  condition,
expression_node_ptr  incrementor,
expression_node_ptr  loop_body,
expression_node_ptr  loop_var,
T loop_counter,
bool  brkcont = false 
) const [inline]

Definition at line 14741 of file exprtk.hpp.

template<typename T>
template<typename Type>
template<std::size_t N>
expression_node_ptr exprtk::parser< T >::expression_generator< Type >::function ( ifunction_t f,
expression_node_ptr(&)  b[N] 
) [inline]

Definition at line 15330 of file exprtk.hpp.

template<typename T>
template<typename Type>
expression_node_ptr exprtk::parser< T >::expression_generator< Type >::function ( ifunction_t f) [inline]

Definition at line 15369 of file exprtk.hpp.

template<typename T>
template<typename Type>
details::operator_type exprtk::parser< T >::expression_generator< Type >::get_operator ( const binary_functor_t bop) [inline]

Definition at line 14158 of file exprtk.hpp.

template<typename T>
template<typename Type>
void exprtk::parser< T >::expression_generator< Type >::init_synthesize_map ( ) [inline]

Definition at line 14024 of file exprtk.hpp.

template<typename T>
template<typename Type>
bool exprtk::parser< T >::expression_generator< Type >::is_assignment_operation ( const details::operator_type operation) const [inline]

Definition at line 14265 of file exprtk.hpp.

template<typename T>
template<typename Type>
template<std::size_t N, typename NodePtr >
bool exprtk::parser< T >::expression_generator< Type >::is_constant_foldable ( NodePtr(&)  b[N]) const [inline, private]

Definition at line 15432 of file exprtk.hpp.

template<typename T>
template<typename Type>
template<typename NodePtr , typename Allocator , template< typename, typename > class Sequence>
bool exprtk::parser< T >::expression_generator< Type >::is_constant_foldable ( const Sequence< NodePtr, Allocator > &  b) const [inline, private]

Definition at line 15448 of file exprtk.hpp.

template<typename T>
template<typename Type>
bool exprtk::parser< T >::expression_generator< Type >::is_invalid_assignment_op ( const details::operator_type operation,
expression_node_ptr(&)  branch[2] 
) [inline]

Definition at line 14461 of file exprtk.hpp.

template<typename T>
template<typename Type>
bool exprtk::parser< T >::expression_generator< Type >::is_invalid_break_continue_op ( expression_node_ptr(&)  branch[2]) [inline]

Definition at line 14473 of file exprtk.hpp.

template<typename T>
template<typename Type>
bool exprtk::parser< T >::expression_generator< Type >::is_invalid_string_op ( const details::operator_type operation,
expression_node_ptr(&)  branch[2] 
) [inline]

Definition at line 14483 of file exprtk.hpp.

template<typename T>
template<typename Type>
bool exprtk::parser< T >::expression_generator< Type >::is_invalid_string_op ( const details::operator_type operation,
expression_node_ptr(&)  branch[3] 
) [inline]

Definition at line 14499 of file exprtk.hpp.

template<typename T>
template<typename Type>
bool exprtk::parser< T >::expression_generator< Type >::is_null_present ( expression_node_ptr(&)  branch[2]) [inline]

Definition at line 14543 of file exprtk.hpp.

template<typename T>
template<typename Type>
bool exprtk::parser< T >::expression_generator< Type >::is_shortcircuit_expression ( const details::operator_type operation) [inline]

Definition at line 14532 of file exprtk.hpp.

template<typename T>
template<typename Type>
bool exprtk::parser< T >::expression_generator< Type >::is_string_operation ( const details::operator_type operation,
expression_node_ptr(&)  branch[2] 
) [inline]

Definition at line 14516 of file exprtk.hpp.

template<typename T>
template<typename Type>
bool exprtk::parser< T >::expression_generator< Type >::is_string_operation ( const details::operator_type operation,
expression_node_ptr(&)  branch[3] 
) [inline]

Definition at line 14523 of file exprtk.hpp.

template<typename T>
template<typename Type>
template<typename Allocator , template< typename, typename > class Sequence>
expression_node_ptr exprtk::parser< T >::expression_generator< Type >::multi_switch_statement ( Sequence< expression_node_ptr, Allocator > &  arglist) [inline]

Definition at line 14881 of file exprtk.hpp.

template<typename T>
template<typename Type>
bool exprtk::parser< T >::expression_generator< Type >::operation_optimizable ( const details::operator_type operation) const [inline]

Definition at line 14320 of file exprtk.hpp.

template<typename T>
template<typename Type>
expression_node_ptr exprtk::parser< T >::expression_generator< Type >::operator() ( const Type &  v) const [inline]

Definition at line 14163 of file exprtk.hpp.

template<typename T>
template<typename Type>
expression_node_ptr exprtk::parser< T >::expression_generator< Type >::operator() ( const std::string &  s) const [inline]

Definition at line 14168 of file exprtk.hpp.

template<typename T>
template<typename Type>
expression_node_ptr exprtk::parser< T >::expression_generator< Type >::operator() ( std::string &  s,
range_pack rp 
) const [inline]

Definition at line 14173 of file exprtk.hpp.

template<typename T>
template<typename Type>
expression_node_ptr exprtk::parser< T >::expression_generator< Type >::operator() ( const std::string &  s,
range_pack rp 
) const [inline]

Definition at line 14178 of file exprtk.hpp.

template<typename T>
template<typename Type>
expression_node_ptr exprtk::parser< T >::expression_generator< Type >::operator() ( const details::operator_type operation,
expression_node_ptr(&)  branch[1] 
) [inline]

Definition at line 14247 of file exprtk.hpp.

template<typename T>
template<typename Type>
expression_node_ptr exprtk::parser< T >::expression_generator< Type >::operator() ( const details::operator_type operation,
expression_node_ptr(&)  branch[2] 
) [inline]

Definition at line 14549 of file exprtk.hpp.

template<typename T>
template<typename Type>
expression_node_ptr exprtk::parser< T >::expression_generator< Type >::operator() ( const details::operator_type operation,
expression_node_ptr(&)  branch[3] 
) [inline]

Definition at line 14592 of file exprtk.hpp.

template<typename T>
template<typename Type>
expression_node_ptr exprtk::parser< T >::expression_generator< Type >::operator() ( const details::operator_type operation,
expression_node_ptr(&)  branch[4] 
) [inline]

Definition at line 14607 of file exprtk.hpp.

template<typename T>
template<typename Type>
expression_node_ptr exprtk::parser< T >::expression_generator< Type >::operator() ( const details::operator_type operation,
expression_node_ptr(&)  branch[5] 
) [inline]

Definition at line 14612 of file exprtk.hpp.

template<typename T>
template<typename Type>
expression_node_ptr exprtk::parser< T >::expression_generator< Type >::operator() ( const details::operator_type operation,
expression_node_ptr(&)  branch[6] 
) [inline]

Definition at line 14617 of file exprtk.hpp.

template<typename T>
template<typename Type>
expression_node_ptr exprtk::parser< T >::expression_generator< Type >::operator() ( const details::operator_type operation,
expression_node_ptr  b0 
) [inline]

Definition at line 14622 of file exprtk.hpp.

template<typename T>
template<typename Type>
expression_node_ptr exprtk::parser< T >::expression_generator< Type >::operator() ( const details::operator_type operation,
expression_node_ptr  b0,
expression_node_ptr  b1 
) [inline]

Definition at line 14628 of file exprtk.hpp.

template<typename T>
template<typename Type>
expression_node_ptr exprtk::parser< T >::expression_generator< Type >::repeat_until_loop ( expression_node_ptr  condition,
expression_node_ptr  branch,
const bool  brkcont = false 
) const [inline]

Definition at line 14710 of file exprtk.hpp.

template<typename T>
template<typename Type>
void exprtk::parser< T >::expression_generator< Type >::set_allocator ( details::node_allocator na) [inline]

Definition at line 14125 of file exprtk.hpp.

template<typename T>
template<typename Type>
void exprtk::parser< T >::expression_generator< Type >::set_bom ( binary_op_map_t binary_op_map) [inline]

Definition at line 14105 of file exprtk.hpp.

template<typename T>
template<typename Type>
void exprtk::parser< T >::expression_generator< Type >::set_ibom ( inv_binary_op_map_t inv_binary_op_map) [inline]

Definition at line 14110 of file exprtk.hpp.

template<typename T>
template<typename Type>
void exprtk::parser< T >::expression_generator< Type >::set_parser ( parser_t p) [inline]

Definition at line 14095 of file exprtk.hpp.

template<typename T>
template<typename Type>
void exprtk::parser< T >::expression_generator< Type >::set_sf3m ( sf3_map_t sf3_map) [inline]

Definition at line 14115 of file exprtk.hpp.

template<typename T>
template<typename Type>
void exprtk::parser< T >::expression_generator< Type >::set_sf4m ( sf4_map_t sf4_map) [inline]

Definition at line 14120 of file exprtk.hpp.

template<typename T>
template<typename Type>
void exprtk::parser< T >::expression_generator< Type >::set_strength_reduction_state ( const bool  strength_reduction_enabled) [inline]

Definition at line 14130 of file exprtk.hpp.

template<typename T>
template<typename Type>
void exprtk::parser< T >::expression_generator< Type >::set_uom ( unary_op_map_t unary_op_map) [inline]

Definition at line 14100 of file exprtk.hpp.

template<typename T>
template<typename Type>
bool exprtk::parser< T >::expression_generator< Type >::sf3_optimizable ( const std::string &  sf3id,
trinary_functor_t tfunc 
) [inline]

Definition at line 14207 of file exprtk.hpp.

template<typename T>
template<typename Type>
bool exprtk::parser< T >::expression_generator< Type >::sf3_optimizable ( const std::string &  sf3id,
details::operator_type operation 
) [inline]

Definition at line 14227 of file exprtk.hpp.

template<typename T>
template<typename Type>
bool exprtk::parser< T >::expression_generator< Type >::sf4_optimizable ( const std::string &  sf4id,
quaternary_functor_t qfunc 
) [inline]

Definition at line 14217 of file exprtk.hpp.

template<typename T>
template<typename Type>
bool exprtk::parser< T >::expression_generator< Type >::sf4_optimizable ( const std::string &  sf4id,
details::operator_type operation 
) [inline]

Definition at line 14237 of file exprtk.hpp.

template<typename T>
template<typename Type>
expression_node_ptr exprtk::parser< T >::expression_generator< Type >::special_function ( const details::operator_type operation,
expression_node_ptr(&)  branch[3] 
) [inline]

Definition at line 15052 of file exprtk.hpp.

template<typename T>
template<typename Type>
expression_node_ptr exprtk::parser< T >::expression_generator< Type >::special_function ( const details::operator_type operation,
expression_node_ptr(&)  branch[4] 
) [inline]

Definition at line 15186 of file exprtk.hpp.

template<typename T>
template<typename Type>
bool exprtk::parser< T >::expression_generator< Type >::special_one_parameter_vararg ( const details::operator_type operation) [inline]

Definition at line 15260 of file exprtk.hpp.

template<typename T>
template<typename Type>
bool exprtk::parser< T >::expression_generator< Type >::strength_reduction_enabled ( ) const [inline]

Definition at line 14135 of file exprtk.hpp.

template<typename T>
template<typename Type>
template<typename Allocator , template< typename, typename > class Sequence>
expression_node_ptr exprtk::parser< T >::expression_generator< Type >::switch_statement ( Sequence< expression_node_ptr, Allocator > &  arglist) [inline]

Definition at line 14866 of file exprtk.hpp.

template<typename T>
template<typename Type>
expression_node_ptr exprtk::parser< T >::expression_generator< Type >::synthesize_assignment_expression ( const details::operator_type operation,
expression_node_ptr(&)  branch[2] 
) [inline, private]

Definition at line 15461 of file exprtk.hpp.

template<typename T>
template<typename Type>
expression_node_ptr exprtk::parser< T >::expression_generator< Type >::synthesize_assignment_operation_expression ( const details::operator_type operation,
expression_node_ptr(&)  branch[2] 
) [inline, private]

Definition at line 15474 of file exprtk.hpp.

template<typename T>
template<typename Type>
expression_node_ptr exprtk::parser< T >::expression_generator< Type >::synthesize_csocs_expression ( const details::operator_type opr,
expression_node_ptr(&)  branch[2] 
) [inline, private]

Definition at line 19491 of file exprtk.hpp.

template<typename T>
template<typename Type>
expression_node_ptr exprtk::parser< T >::expression_generator< Type >::synthesize_csocsr_expression ( const details::operator_type opr,
expression_node_ptr(&)  branch[2] 
) [inline, private]

Definition at line 19516 of file exprtk.hpp.

template<typename T>
template<typename Type>
expression_node_ptr exprtk::parser< T >::expression_generator< Type >::synthesize_csos_expression ( const details::operator_type opr,
expression_node_ptr(&)  branch[2] 
) [inline, private]

Definition at line 19448 of file exprtk.hpp.

template<typename T>
template<typename Type>
expression_node_ptr exprtk::parser< T >::expression_generator< Type >::synthesize_csosr_expression ( const details::operator_type opr,
expression_node_ptr(&)  branch[2] 
) [inline, private]

Definition at line 19456 of file exprtk.hpp.

template<typename T>
template<typename Type>
expression_node_ptr exprtk::parser< T >::expression_generator< Type >::synthesize_csrocs_expression ( const details::operator_type opr,
expression_node_ptr(&)  branch[2] 
) [inline, private]

Definition at line 19550 of file exprtk.hpp.

template<typename T>
template<typename Type>
expression_node_ptr exprtk::parser< T >::expression_generator< Type >::synthesize_csrocsr_expression ( const details::operator_type opr,
expression_node_ptr(&)  branch[2] 
) [inline, private]

Definition at line 19560 of file exprtk.hpp.

template<typename T>
template<typename Type>
expression_node_ptr exprtk::parser< T >::expression_generator< Type >::synthesize_csros_expression ( const details::operator_type opr,
expression_node_ptr(&)  branch[2] 
) [inline, private]

Definition at line 19527 of file exprtk.hpp.

template<typename T>
template<typename Type>
expression_node_ptr exprtk::parser< T >::expression_generator< Type >::synthesize_csrosr_expression ( const details::operator_type opr,
expression_node_ptr(&)  branch[2] 
) [inline, private]

Definition at line 19537 of file exprtk.hpp.

template<typename T>
template<typename Type>
bool exprtk::parser< T >::expression_generator< Type >::synthesize_expression ( const details::operator_type operation,
expression_node_ptr(&)  branch[2],
expression_node_ptr result 
) [inline, private]

Definition at line 15915 of file exprtk.hpp.

template<typename T>
template<typename Type>
template<typename NodeType , std::size_t N>
expression_node_ptr exprtk::parser< T >::expression_generator< Type >::synthesize_expression ( const details::operator_type operation,
expression_node_ptr(&)  branch[N] 
) [inline, private]

Definition at line 19816 of file exprtk.hpp.

template<typename T>
template<typename Type>
template<typename NodeType , std::size_t N>
expression_node_ptr exprtk::parser< T >::expression_generator< Type >::synthesize_expression ( F f,
expression_node_ptr(&)  branch[N] 
) [inline, private]

Definition at line 19847 of file exprtk.hpp.

template<typename T>
template<typename Type>
expression_node_ptr exprtk::parser< T >::expression_generator< Type >::synthesize_null_expression ( const details::operator_type operation,
expression_node_ptr(&)  branch[2] 
) [inline, private]

Definition at line 19728 of file exprtk.hpp.

template<typename T>
template<typename Type>
expression_node_ptr exprtk::parser< T >::expression_generator< Type >::synthesize_shortcircuit_expression ( const details::operator_type operation,
expression_node_ptr(&)  branch[2] 
) [inline, private]

Definition at line 15519 of file exprtk.hpp.

template<typename T>
template<typename Type>
expression_node_ptr exprtk::parser< T >::expression_generator< Type >::synthesize_socs_expression ( const details::operator_type opr,
expression_node_ptr(&)  branch[2] 
) [inline, private]

Definition at line 19440 of file exprtk.hpp.

template<typename T>
template<typename Type>
expression_node_ptr exprtk::parser< T >::expression_generator< Type >::synthesize_socsr_expression ( const details::operator_type opr,
expression_node_ptr(&)  branch[2] 
) [inline, private]

Definition at line 19417 of file exprtk.hpp.

template<typename T>
template<typename Type>
expression_node_ptr exprtk::parser< T >::expression_generator< Type >::synthesize_sos_expression ( const details::operator_type opr,
expression_node_ptr(&)  branch[2] 
) [inline, private]

Definition at line 19389 of file exprtk.hpp.

template<typename T>
template<typename Type>
template<typename T0 , typename T1 >
expression_node_ptr exprtk::parser< T >::expression_generator< Type >::synthesize_sos_expression_impl ( const details::operator_type opr,
T0  s0,
T1  s1 
) [inline, private]

Definition at line 19375 of file exprtk.hpp.

template<typename T>
template<typename Type>
expression_node_ptr exprtk::parser< T >::expression_generator< Type >::synthesize_sosr_expression ( const details::operator_type opr,
expression_node_ptr(&)  branch[2] 
) [inline, private]

Definition at line 19406 of file exprtk.hpp.

template<typename T>
template<typename Type>
expression_node_ptr exprtk::parser< T >::expression_generator< Type >::synthesize_srocs_expression ( const details::operator_type opr,
expression_node_ptr(&)  branch[2] 
) [inline, private]

Definition at line 19467 of file exprtk.hpp.

template<typename T>
template<typename Type>
expression_node_ptr exprtk::parser< T >::expression_generator< Type >::synthesize_srocsr_expression ( const details::operator_type opr,
expression_node_ptr(&)  branch[2] 
) [inline, private]

Definition at line 19478 of file exprtk.hpp.

template<typename T>
template<typename Type>
expression_node_ptr exprtk::parser< T >::expression_generator< Type >::synthesize_sros_expression ( const details::operator_type opr,
expression_node_ptr(&)  branch[2] 
) [inline, private]

Definition at line 19396 of file exprtk.hpp.

template<typename T>
template<typename Type>
expression_node_ptr exprtk::parser< T >::expression_generator< Type >::synthesize_srosr_expression ( const details::operator_type opr,
expression_node_ptr(&)  branch[2] 
) [inline, private]

Definition at line 19427 of file exprtk.hpp.

template<typename T>
template<typename Type>
template<typename T0 , typename T1 >
expression_node_ptr exprtk::parser< T >::expression_generator< Type >::synthesize_str_xoxr_expression_impl ( const details::operator_type opr,
T0  s0,
T1  s1,
range_pack  rp1 
) [inline, private]

Definition at line 19343 of file exprtk.hpp.

template<typename T>
template<typename Type>
template<typename T0 , typename T1 >
expression_node_ptr exprtk::parser< T >::expression_generator< Type >::synthesize_str_xrox_expression_impl ( const details::operator_type opr,
T0  s0,
T1  s1,
range_pack  rp0 
) [inline, private]

Definition at line 19327 of file exprtk.hpp.

template<typename T>
template<typename Type>
template<typename T0 , typename T1 >
expression_node_ptr exprtk::parser< T >::expression_generator< Type >::synthesize_str_xroxr_expression_impl ( const details::operator_type opr,
T0  s0,
T1  s1,
range_pack  rp0,
range_pack  rp1 
) [inline, private]

Definition at line 19359 of file exprtk.hpp.

template<typename T>
template<typename Type>
expression_node_ptr exprtk::parser< T >::expression_generator< Type >::synthesize_string_expression ( const details::operator_type opr,
expression_node_ptr(&)  branch[2] 
) [inline, private]

Definition at line 19574 of file exprtk.hpp.

template<typename T>
template<typename Type>
expression_node_ptr exprtk::parser< T >::expression_generator< Type >::synthesize_string_expression ( const details::operator_type opr,
expression_node_ptr(&)  branch[3] 
) [inline, private]

Definition at line 19630 of file exprtk.hpp.

template<typename T>
template<typename Type>
expression_node_ptr exprtk::parser< T >::expression_generator< Type >::synthesize_unary_expression ( const details::operator_type operation,
expression_node_ptr(&)  branch[1] 
) [inline]

Definition at line 14950 of file exprtk.hpp.

template<typename T>
template<typename Type>
expression_node_ptr exprtk::parser< T >::expression_generator< Type >::synthesize_uv_expression ( const details::operator_type operation,
expression_node_ptr(&)  branch[1] 
) [inline]

Definition at line 14935 of file exprtk.hpp.

template<typename T>
template<typename Type>
expression_node_ptr exprtk::parser< T >::expression_generator< Type >::synthesize_uvouv_expression ( const details::operator_type operation,
expression_node_ptr(&)  branch[2] 
) [inline, private]

Definition at line 19284 of file exprtk.hpp.

template<typename T>
template<typename Type>
std::string exprtk::parser< T >::expression_generator< Type >::to_str ( const details::operator_type operation) const [inline]

Definition at line 14294 of file exprtk.hpp.

template<typename T>
template<typename Type>
bool exprtk::parser< T >::expression_generator< Type >::unary_optimizable ( const details::operator_type operation) const [inline]

Definition at line 14183 of file exprtk.hpp.

template<typename T>
template<typename Type>
bool exprtk::parser< T >::expression_generator< Type >::uvouv_optimizable ( const details::operator_type operation,
expression_node_ptr(&)  branch[2] 
) const [inline]

Definition at line 14429 of file exprtk.hpp.

template<typename T>
template<typename Type>
bool exprtk::parser< T >::expression_generator< Type >::valid_operator ( const details::operator_type operation,
binary_functor_t bop 
) [inline]

Definition at line 14140 of file exprtk.hpp.

template<typename T>
template<typename Type>
bool exprtk::parser< T >::expression_generator< Type >::valid_operator ( const details::operator_type operation,
unary_functor_t uop 
) [inline]

Definition at line 14149 of file exprtk.hpp.

template<typename T>
template<typename Type>
bool exprtk::parser< T >::expression_generator< Type >::valid_string_operation ( const details::operator_type operation) const [inline]

Definition at line 14274 of file exprtk.hpp.

template<typename T>
template<typename Type>
template<typename Allocator , template< typename, typename > class Sequence>
expression_node_ptr exprtk::parser< T >::expression_generator< Type >::vararg_function ( const details::operator_type operation,
Sequence< expression_node_ptr, Allocator > &  arglist 
) [inline]

Definition at line 15296 of file exprtk.hpp.

template<typename T>
template<typename Type>
expression_node_ptr exprtk::parser< T >::expression_generator< Type >::vararg_function_call ( ivararg_function_t vaf,
std::vector< expression_node_ptr > &  arglist 
) [inline]

Definition at line 15375 of file exprtk.hpp.

template<typename T>
template<typename Type>
expression_node_ptr exprtk::parser< T >::expression_generator< Type >::varnode_optimize_sf3 ( const details::operator_type operation,
expression_node_ptr(&)  branch[3] 
) [inline]

Definition at line 15010 of file exprtk.hpp.

template<typename T>
template<typename Type>
expression_node_ptr exprtk::parser< T >::expression_generator< Type >::varnode_optimize_sf4 ( const details::operator_type operation,
expression_node_ptr(&)  branch[4] 
) [inline]

Definition at line 15142 of file exprtk.hpp.

template<typename T>
template<typename Type>
template<typename Allocator , template< typename, typename > class Sequence>
expression_node_ptr exprtk::parser< T >::expression_generator< Type >::varnode_optimize_varargfunc ( const details::operator_type operation,
Sequence< expression_node_ptr, Allocator > &  arglist 
) [inline]

Definition at line 15273 of file exprtk.hpp.

template<typename T>
template<typename Type>
expression_node_ptr exprtk::parser< T >::expression_generator< Type >::vector_element ( const std::string &  symbol,
typename symbol_table_t::vector_ptr  vector_base,
expression_node_ptr  index 
) [inline]

Definition at line 15396 of file exprtk.hpp.

template<typename T>
template<typename Type>
bool exprtk::parser< T >::expression_generator< Type >::vob_optimizable ( const details::operator_type operation,
expression_node_ptr(&)  branch[2] 
) const [inline]

Definition at line 14437 of file exprtk.hpp.

template<typename T>
template<typename Type>
bool exprtk::parser< T >::expression_generator< Type >::voc_optimizable ( const details::operator_type operation,
expression_node_ptr(&)  branch[2] 
) const [inline]

Definition at line 14397 of file exprtk.hpp.

template<typename T>
template<typename Type>
bool exprtk::parser< T >::expression_generator< Type >::vov_optimizable ( const details::operator_type operation,
expression_node_ptr(&)  branch[2] 
) const [inline]

Definition at line 14405 of file exprtk.hpp.

template<typename T>
template<typename Type>
expression_node_ptr exprtk::parser< T >::expression_generator< Type >::while_loop ( expression_node_ptr  condition,
expression_node_ptr  branch,
const bool  brkcont = false 
) const [inline]

Definition at line 14679 of file exprtk.hpp.


Member Data Documentation

template<typename T>
template<typename Type>
binary_op_map_t* exprtk::parser< T >::expression_generator< Type >::binary_op_map_ [private]

Definition at line 19872 of file exprtk.hpp.

template<typename T>
template<typename Type>
inv_binary_op_map_t* exprtk::parser< T >::expression_generator< Type >::inv_binary_op_map_ [private]

Definition at line 19873 of file exprtk.hpp.

template<typename T>
template<typename Type>
details::node_allocator* exprtk::parser< T >::expression_generator< Type >::node_allocator_ [private]

Definition at line 19869 of file exprtk.hpp.

template<typename T>
template<typename Type>
parser_t* exprtk::parser< T >::expression_generator< Type >::parser_ [private]

Definition at line 19876 of file exprtk.hpp.

template<typename T>
template<typename Type>
sf3_map_t* exprtk::parser< T >::expression_generator< Type >::sf3_map_ [private]

Definition at line 19874 of file exprtk.hpp.

template<typename T>
template<typename Type>
sf4_map_t* exprtk::parser< T >::expression_generator< Type >::sf4_map_ [private]

Definition at line 19875 of file exprtk.hpp.

template<typename T>
template<typename Type>
bool exprtk::parser< T >::expression_generator< Type >::strength_reduction_enabled_ [private]

Definition at line 19868 of file exprtk.hpp.

template<typename T>
template<typename Type>
synthesize_map_t exprtk::parser< T >::expression_generator< Type >::synthesize_map_ [private]

Definition at line 19870 of file exprtk.hpp.

template<typename T>
template<typename Type>
unary_op_map_t* exprtk::parser< T >::expression_generator< Type >::unary_op_map_ [private]

Definition at line 19871 of file exprtk.hpp.


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


labust_mission
Author(s): Filip Mandic
autogenerated on Fri Aug 28 2015 11:23:04