Data Structures | Namespaces | Functions

/export/development/ViennaMath/viennamath/runtime/operations/rt_rt.hpp File Reference

Defines the helper facilities for operator overloads for all ViennaMath expression types. More...

#include <ostream>
#include "viennamath/forwards.h"
#include "viennamath/runtime/binary_expr.hpp"

Go to the source code of this file.

Data Structures

struct  add< LHS, RHS, b1, b2 >
 Returns the type of adding two expressions together. Default case: both types are runtime expressions. More...
struct  subtract< LHS, RHS, b1, b2 >
 Returns the type when subtracting two expressions. Default case: both types are runtime expressions. More...
struct  mult< LHS, RHS, b1, b2 >
 Returns the type when multiplying two expressions. Default case: both types are runtime expressions. More...
struct  div< LHS, RHS, b1, b2 >
 Returns the type when dividing two expressions. Default case: both types are runtime expressions. More...

Namespaces

namespace  viennamath
 

The main ViennaMath namespace. All types and functions for the user reside here.


namespace  viennamath::traits
 

Any generic free functions for unifying interfaces are defined here.


namespace  viennamath::result_of
 

The namespace containing a set of metafunctions which can be used by the ViennaMath library user.


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

Defines the helper facilities for operator overloads for all ViennaMath expression types.