File expr.hxx#
Defines
-
DEFINE_BINARY_OP(name, op)#
Binary operator classes.
-
DEFINE_OVERLOAD_FUNC(name, func)#
Define functions add, mul which use operator structs.
Functions
-
template<typename ExprT1, typename ExprT2>
BinaryResult<ExprT1, ExprT2, Add>::type add(const ExprT1 &e1, const ExprT2 &e2)# Addition of two Expressions.
-
class Literal#
- #include <expr.hxx>
Literal class to capture BoutReal values in expressions.
Public Functions
-
inline ~Literal()#
-
inline ~Literal()#
-
class Field3DExpr#
-
Public Functions
-
class Field2DExpr#
-
Public Functions
-
template<class ExprT>
struct exprTraits# - #include <expr.hxx>
Expression traits, to convert doubles etc. to Literal.
-
template<>
struct exprTraits<double>#
-
template<>
struct exprTraits<float>#
-
template<>
struct exprTraits<int>#
-
template<typename T>
struct asExpr#
-
template<>
struct asExpr<int>#
-
template<>
struct asExpr<double>#
-
template<>
struct asExpr<float>#
-
template<>
struct asExpr<Field3D># Public Types
-
using type = Field3DExpr#
Public Static Functions
-
static inline const Field3DExpr getExpr(const Field3D &x)#
-
using type = Field3DExpr#
-
template<typename Lhs, typename Rhs>
struct PromoteType#
-
template<class ExprT1, class ExprT2, class BinOp>
class BinaryExpr# Public Types
-
using ltype = typename exprTraits<ExprT1>::expr_type#
-
using rtype = typename exprTraits<ExprT2>::expr_type#
-
using type = typename PromoteType<ltype, rtype>::type#
Type of the resulting expression.
Public Functions
-
using ltype = typename exprTraits<ExprT1>::expr_type#
-
template<typename ExprT1, typename ExprT2, class name>
struct BinaryResult#
-
struct Add#
-
struct Subtract#
-
struct Multiply#
-
struct Divide#
-
struct Power#