This class represents a smart pointer to all types expressions. More...
#include <expr.hpp>
Public Types | |
typedef InterfaceType::numeric_type | numeric_type |
typedef InterfaceType | interface_type |
Public Member Functions | |
rt_expr () | |
rt_expr (const InterfaceType *e) | |
rt_expr (rt_binary_expr< InterfaceType > const &other) | |
rt_expr (rt_unary_expr< InterfaceType > const &other) | |
template<typename LHS , typename OP , typename RHS > | |
rt_expr (ct_binary_expr< LHS, OP, RHS > const &other) | |
template<typename LHS , typename OP > | |
rt_expr (ct_unary_expr< LHS, OP > const &other) | |
rt_expr (rt_variable< InterfaceType > const &other) | |
template<id_type id> | |
rt_expr (ct_variable< id > const &other) | |
template<typename T > | |
rt_expr (rt_constant< T, InterfaceType > const &other) | |
rt_expr (rt_function_symbol< InterfaceType > const &other) | |
rt_expr (rt_vector_expr< InterfaceType > const &other) | |
template<long value> | |
rt_expr (ct_constant< value > const &other) | |
rt_expr (numeric_type const &other) | |
rt_expr (rt_expr const &other) | |
rt_expr & | operator= (InterfaceType *other) |
rt_expr & | operator= (rt_expr const &other) |
template<typename LHS , typename OP , typename RHS > | |
rt_expr & | operator= (ct_binary_expr< LHS, OP, RHS > const &other) |
template<typename LHS , typename OP > | |
rt_expr & | operator= (ct_unary_expr< LHS, OP > const &other) |
rt_expr & | operator= (rt_binary_expr< InterfaceType > const &other) |
rt_expr & | operator= (rt_variable< InterfaceType > const &other) |
template<id_type id> | |
rt_expr & | operator= (ct_variable< id > const &other) |
template<typename ScalarType > | |
rt_expr & | operator= (rt_constant< ScalarType, InterfaceType > const &other) |
template<long value> | |
rt_expr & | operator= (ct_constant< value > const &other) |
rt_expr & | operator= (rt_function_symbol< InterfaceType > const &other) |
rt_expr & | operator= (rt_vector_expr< InterfaceType > const &other) |
rt_expr & | operator= (numeric_type value) |
const InterfaceType * | get () const |
numeric_type | operator() (numeric_type val) const |
template<typename ScalarType > | |
numeric_type | operator() (rt_constant< ScalarType, InterfaceType > val) const |
template<long value> | |
numeric_type | operator() (ct_constant< value > val) const |
template<typename VectorType > | |
numeric_type | operator() (VectorType const &v) const |
numeric_type | operator() (std::vector< numeric_type > const &stl_v) const |
template<typename T0 > | |
numeric_type | operator() (viennamath::ct_vector_1< T0 > const &v) const |
template<typename T0 , typename T1 > | |
numeric_type | operator() (viennamath::ct_vector_2< T0, T1 > const &v) const |
template<typename T0 , typename T1 , typename T2 > | |
numeric_type | operator() (viennamath::ct_vector_3< T0, T1, T2 > const &v) const |
This class represents a smart pointer to all types expressions.
Additionally provides the basic user-interface for evaluation using operator().
InterfaceType | The expression runtime interface to inherit from. Usually rt_expression_interface, but extensions are possible. |
typedef InterfaceType interface_type |
typedef InterfaceType::numeric_type numeric_type |
rt_expr | ( | ) | [inline] |
rt_expr | ( | const InterfaceType * | e | ) | [inline, explicit] |
rt_expr | ( | rt_binary_expr< InterfaceType > const & | other | ) | [inline] |
rt_expr | ( | rt_unary_expr< InterfaceType > const & | other | ) | [inline] |
rt_expr | ( | ct_binary_expr< LHS, OP, RHS > const & | other | ) | [inline] |
rt_expr | ( | ct_unary_expr< LHS, OP > const & | other | ) | [inline] |
rt_expr | ( | rt_variable< InterfaceType > const & | other | ) | [inline] |
rt_expr | ( | ct_variable< id > const & | other | ) | [inline] |
rt_expr | ( | rt_constant< T, InterfaceType > const & | other | ) | [inline] |
rt_expr | ( | rt_function_symbol< InterfaceType > const & | other | ) | [inline] |
rt_expr | ( | rt_vector_expr< InterfaceType > const & | other | ) | [inline] |
rt_expr | ( | ct_constant< value > const & | other | ) | [inline] |
rt_expr | ( | numeric_type const & | other | ) | [inline] |
const InterfaceType* get | ( | ) | const [inline] |
numeric_type operator() | ( | ct_constant< value > | val | ) | const [inline] |
numeric_type operator() | ( | VectorType const & | v | ) | const [inline] |
numeric_type operator() | ( | std::vector< numeric_type > const & | stl_v | ) | const [inline] |
numeric_type operator() | ( | viennamath::ct_vector_1< T0 > const & | v | ) | const [inline] |
numeric_type operator() | ( | viennamath::ct_vector_2< T0, T1 > const & | v | ) | const [inline] |
numeric_type operator() | ( | viennamath::ct_vector_3< T0, T1, T2 > const & | v | ) | const [inline] |
numeric_type operator() | ( | numeric_type | val | ) | const [inline] |
numeric_type operator() | ( | rt_constant< ScalarType, InterfaceType > | val | ) | const [inline] |
rt_expr& operator= | ( | rt_variable< InterfaceType > const & | other | ) | [inline] |
rt_expr& operator= | ( | numeric_type | value | ) | [inline] |
rt_expr& operator= | ( | rt_vector_expr< InterfaceType > const & | other | ) | [inline] |
rt_expr& operator= | ( | ct_constant< value > const & | other | ) | [inline] |
rt_expr& operator= | ( | rt_function_symbol< InterfaceType > const & | other | ) | [inline] |
rt_expr& operator= | ( | InterfaceType * | other | ) | [inline] |
rt_expr& operator= | ( | ct_binary_expr< LHS, OP, RHS > const & | other | ) | [inline] |
rt_expr& operator= | ( | ct_unary_expr< LHS, OP > const & | other | ) | [inline] |
rt_expr& operator= | ( | rt_binary_expr< InterfaceType > const & | other | ) | [inline] |
rt_expr& operator= | ( | ct_variable< id > const & | other | ) | [inline] |
rt_expr& operator= | ( | rt_constant< ScalarType, InterfaceType > const & | other | ) | [inline] |