PulseView  unreleased development snapshot
A Qt-based sigrok GUI
exprtk::details::conditional_string_node< T > Class Template Reference

#include <exprtk.hpp>

Inheritance diagram for exprtk::details::conditional_string_node< T >:
Collaboration diagram for exprtk::details::conditional_string_node< T >:

Public Types

typedef expression_node< T > * expression_ptr
 
typedef string_base_node< T > * str_base_ptr
 
typedef range_pack< T > range_t
 
typedef range_trange_ptr
 
typedef range_interface< T > irange_t
 
typedef irange_tirange_ptr
 
- Public Types inherited from exprtk::details::trinary_node< T >
typedef expression_node< T > * expression_ptr
 
typedef std::pair< expression_ptr, bool > branch_t
 
- Public Types inherited from exprtk::details::expression_node< T >
enum  node_type {
  e_none, e_null, e_constant, e_unary,
  e_binary, e_binary_ext, e_trinary, e_quaternary,
  e_vararg, e_conditional, e_while, e_repeat,
  e_for, e_switch, e_mswitch, e_return,
  e_retenv, e_variable, e_stringvar, e_stringconst,
  e_stringvarrng, e_cstringvarrng, e_strgenrange, e_strconcat,
  e_stringvarsize, e_strswap, e_stringsize, e_stringvararg,
  e_function, e_vafunction, e_genfunction, e_strfunction,
  e_strcondition, e_strccondition, e_add, e_sub,
  e_mul, e_div, e_mod, e_pow,
  e_lt, e_lte, e_gt, e_gte,
  e_eq, e_ne, e_and, e_nand,
  e_or, e_nor, e_xor, e_xnor,
  e_in, e_like, e_ilike, e_inranges,
  e_ipow, e_ipowinv, e_abs, e_acos,
  e_acosh, e_asin, e_asinh, e_atan,
  e_atanh, e_ceil, e_cos, e_cosh,
  e_exp, e_expm1, e_floor, e_log,
  e_log10, e_log2, e_log1p, e_neg,
  e_pos, e_round, e_sin, e_sinc,
  e_sinh, e_sqrt, e_tan, e_tanh,
  e_cot, e_sec, e_csc, e_r2d,
  e_d2r, e_d2g, e_g2d, e_notl,
  e_sgn, e_erf, e_erfc, e_ncdf,
  e_frac, e_trunc, e_uvouv, e_vov,
  e_cov, e_voc, e_vob, e_bov,
  e_cob, e_boc, e_vovov, e_vovoc,
  e_vocov, e_covov, e_covoc, e_vovovov,
  e_vovovoc, e_vovocov, e_vocovov, e_covovov,
  e_covocov, e_vocovoc, e_covovoc, e_vococov,
  e_sf3ext, e_sf4ext, e_nulleq, e_strass,
  e_vector, e_vecelem, e_rbvecelem, e_rbveccelem,
  e_vecdefass, e_vecvalass, e_vecvecass, e_vecopvalass,
  e_vecopvecass, e_vecfunc, e_vecvecswap, e_vecvecineq,
  e_vecvalineq, e_valvecineq, e_vecvecarith, e_vecvalarith,
  e_valvecarith, e_vecunaryop, e_break, e_continue,
  e_swap
}
 
typedef T value_type
 
typedef expression_node< T > * expression_ptr
 
- Public Types inherited from exprtk::details::string_base_node< T >
typedef range_data_type< T > range_data_type_t
 
- Public Types inherited from exprtk::details::range_interface< T >
typedef range_pack< T > range_t
 

Public Member Functions

 conditional_string_node (expression_ptr test, expression_ptr consequent, expression_ptr alternative)
 
value () const
 
std::string str () const
 
char_cptr base () const
 
std::size_t size () const
 
range_trange_ref ()
 
const range_trange_ref () const
 
expression_node< T >::node_type type () const
 
- Public Member Functions inherited from exprtk::details::trinary_node< T >
 trinary_node (const operator_type &opr, expression_ptr branch0, expression_ptr branch1, expression_ptr branch2)
 
 ~trinary_node ()
 
- Public Member Functions inherited from exprtk::details::expression_node< T >
virtual ~expression_node ()
 
virtual expression_node< T > * branch (const std::size_t &index=0) const
 
- Public Member Functions inherited from exprtk::details::string_base_node< T >
virtual ~string_base_node ()
 
- Public Member Functions inherited from exprtk::details::range_interface< T >
virtual ~range_interface ()
 

Private Attributes

bool initialised_
 
str_base_ptr str0_base_ptr_
 
str_base_ptr str1_base_ptr_
 
irange_ptr str0_range_ptr_
 
irange_ptr str1_range_ptr_
 
range_t range_
 
std::string value_
 
expression_ptr test_
 
expression_ptr consequent_
 
expression_ptr alternative_
 

Additional Inherited Members

- Protected Attributes inherited from exprtk::details::trinary_node< T >
operator_type operation_
 
branch_t branch_ [3]
 

Detailed Description

template<typename T>
class exprtk::details::conditional_string_node< T >

Definition at line 8693 of file exprtk.hpp.

Member Typedef Documentation

Definition at line 8699 of file exprtk.hpp.

template<typename T >
typedef irange_t* exprtk::details::conditional_string_node< T >::irange_ptr

Definition at line 8704 of file exprtk.hpp.

template<typename T >
typedef range_interface<T> exprtk::details::conditional_string_node< T >::irange_t

Definition at line 8703 of file exprtk.hpp.

template<typename T >
typedef range_t* exprtk::details::conditional_string_node< T >::range_ptr

Definition at line 8702 of file exprtk.hpp.

template<typename T >
typedef range_pack<T> exprtk::details::conditional_string_node< T >::range_t

Definition at line 8701 of file exprtk.hpp.

Definition at line 8700 of file exprtk.hpp.

Constructor & Destructor Documentation

template<typename T >
exprtk::details::conditional_string_node< T >::conditional_string_node ( expression_ptr  test,
expression_ptr  consequent,
expression_ptr  alternative 
)
inline

Definition at line 8706 of file exprtk.hpp.

Here is the call graph for this function:

Member Function Documentation

template<typename T >
char_cptr exprtk::details::conditional_string_node< T >::base ( ) const
inlinevirtual

Implements exprtk::details::string_base_node< T >.

Definition at line 8811 of file exprtk.hpp.

template<typename T >
range_t& exprtk::details::conditional_string_node< T >::range_ref ( )
inlinevirtual

Implements exprtk::details::range_interface< T >.

Definition at line 8821 of file exprtk.hpp.

template<typename T >
const range_t& exprtk::details::conditional_string_node< T >::range_ref ( ) const
inlinevirtual

Implements exprtk::details::range_interface< T >.

Definition at line 8826 of file exprtk.hpp.

template<typename T >
std::size_t exprtk::details::conditional_string_node< T >::size ( ) const
inlinevirtual

Implements exprtk::details::string_base_node< T >.

Definition at line 8816 of file exprtk.hpp.

template<typename T >
std::string exprtk::details::conditional_string_node< T >::str ( ) const
inlinevirtual

Implements exprtk::details::string_base_node< T >.

Definition at line 8806 of file exprtk.hpp.

template<typename T >
expression_node<T>::node_type exprtk::details::conditional_string_node< T >::type ( ) const
inlinevirtual

Reimplemented from exprtk::details::trinary_node< T >.

Definition at line 8831 of file exprtk.hpp.

template<typename T >
T exprtk::details::conditional_string_node< T >::value ( ) const
inlinevirtual

Reimplemented from exprtk::details::trinary_node< T >.

Definition at line 8758 of file exprtk.hpp.

Here is the call graph for this function:

Member Data Documentation

template<typename T >
expression_ptr exprtk::details::conditional_string_node< T >::alternative_
private

Definition at line 8848 of file exprtk.hpp.

template<typename T >
expression_ptr exprtk::details::conditional_string_node< T >::consequent_
private

Definition at line 8847 of file exprtk.hpp.

template<typename T >
bool exprtk::details::conditional_string_node< T >::initialised_
private

Definition at line 8838 of file exprtk.hpp.

template<typename T >
range_t exprtk::details::conditional_string_node< T >::range_
mutableprivate

Definition at line 8843 of file exprtk.hpp.

template<typename T >
str_base_ptr exprtk::details::conditional_string_node< T >::str0_base_ptr_
private

Definition at line 8839 of file exprtk.hpp.

template<typename T >
irange_ptr exprtk::details::conditional_string_node< T >::str0_range_ptr_
private

Definition at line 8841 of file exprtk.hpp.

template<typename T >
str_base_ptr exprtk::details::conditional_string_node< T >::str1_base_ptr_
private

Definition at line 8840 of file exprtk.hpp.

template<typename T >
irange_ptr exprtk::details::conditional_string_node< T >::str1_range_ptr_
private

Definition at line 8842 of file exprtk.hpp.

template<typename T >
expression_ptr exprtk::details::conditional_string_node< T >::test_
private

Definition at line 8846 of file exprtk.hpp.

template<typename T >
std::string exprtk::details::conditional_string_node< T >::value_
mutableprivate

Definition at line 8844 of file exprtk.hpp.


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