Functions

viennamath::traits Namespace Reference

Any generic free functions for unifying interfaces are defined here. More...

Functions

template<typename InterfaceType , typename NumericT >
InterfaceType * clone (rt_constant< NumericT, InterfaceType > const &c)
template<typename InterfaceType >
InterfaceType * clone (default_numeric_type d)
template<typename InterfaceType , long value>
InterfaceType * clone (ct_constant< value > const &c)
template<typename InterfaceType >
InterfaceType * clone (rt_variable< InterfaceType > const &v)
template<typename InterfaceType , id_type id>
InterfaceType * clone (ct_variable< id > const &v)
template<typename InterfaceType >
InterfaceType * clone (rt_function_symbol< InterfaceType > const &fs)
template<typename InterfaceType >
InterfaceType * clone (rt_unary_expr< InterfaceType > const &e)
template<typename InterfaceType >
InterfaceType * clone (rt_binary_expr< InterfaceType > const &e)
template<typename InterfaceType >
InterfaceType * clone (rt_expr< InterfaceType > const &e)
template<typename InterfaceType , typename LHS , typename OP , typename RHS >
InterfaceType * clone (ct_binary_expr< LHS, OP, RHS > const &e)
template<typename InterfaceType , typename LHS , typename OP >
InterfaceType * clone (ct_unary_expr< LHS, OP > const &e)

Detailed Description

Any generic free functions for unifying interfaces are defined here.


Function Documentation

InterfaceType* viennamath::traits::clone ( rt_constant< NumericT, InterfaceType > const &  c  ) 
InterfaceType* viennamath::traits::clone ( ct_unary_expr< LHS, OP > const &  e  ) 
InterfaceType* viennamath::traits::clone ( ct_binary_expr< LHS, OP, RHS > const &  e  ) 
InterfaceType* viennamath::traits::clone ( rt_expr< InterfaceType > const &  e  ) 
InterfaceType* viennamath::traits::clone ( rt_binary_expr< InterfaceType > const &  e  ) 
InterfaceType* viennamath::traits::clone ( rt_unary_expr< InterfaceType > const &  e  ) 
InterfaceType* viennamath::traits::clone ( rt_function_symbol< InterfaceType > const &  fs  ) 
InterfaceType* viennamath::traits::clone ( ct_variable< id > const &  v  ) 
InterfaceType* viennamath::traits::clone ( rt_variable< InterfaceType > const &  v  ) 
InterfaceType* viennamath::traits::clone ( ct_constant< value > const &  c  ) 
InterfaceType* viennamath::traits::clone ( default_numeric_type  d  )