Class Expression¶
Defined in File expression.h
Class Documentation¶
-
class
SymEngine::Expression¶ Public Functions
-
Expression()¶ Plain constructor of Expression.
-
template<class
T>Expression(T n, typename std::enable_if<std::is_integral<T>::value>::type* = nullptr)¶ Construct Expression from integral types.
-
template<class
T>Expression(T n, typename std::enable_if<std::is_floating_point<T>::value>::type* = nullptr)¶ Construct Expression from floating point types.
-
template<class
T>Expression(std::complex<T> n, typename std::enable_if<std::is_floating_point<T>::value>::type* = nullptr)¶ Construct Expression from std::complex<> types.
-
Expression(const integer_class &n)¶
-
Expression(const rational_class &n)¶
-
Expression(const std::string &s)¶
-
Expression(const Expression&) = default¶ Construct Expression from Expression.
-
Expression (Expression &&other) SYMENGINE_NOEXCEPT Construct Expression from reference to Expression.
-
Expression &
operator=(const Expression&) = default¶ Overload assignment operator.
-
Expression & operator= (Expression &&other) SYMENGINE_NOEXCEPT Overload assignment operator for reference.
-
~Expression () SYMENGINE_NOEXCEPT Destructor of Expression.
-
Expression &
operator+=(const Expression &other)¶ Overload addition and assignment(+=)
-
Expression &
operator+=(const RCP<const Basic> &other)¶
-
operator const RCP<const Basic>&() const¶
-
Expression
diff(const RCP<const Symbol> &x, bool cache = true) const¶ Differentiation.
-
Expression
diff(const RCP<const Basic> &x, bool cache = true) const¶ Differentiation.
-
Expression
subs(const map_basic_basic &subs_map) const¶ Substitution.
-
template<typename
T, typename = typename std::enable_if<std::is_arithmetic<T>::value>::type>operator T() const¶ Evaluation to a floating point type.
-
template<typename
T, typename = typename std::enable_if<std::is_arithmetic<T>::value>::type>operator std::complex<T>() const¶ Evaluation to a complex floating point type.
-
operator const Basic&() const¶
-
Expression
operator-() const¶ Overload unary negative.
-
Expression &
operator-=(const Expression &other)¶ Overload subtraction and assignment(-=)
-
Expression &
operator-=(const RCP<const Basic> &other)¶
-
Expression &
operator*=(const Expression &other)¶ Overload multiplication and assignment (*=)
-
Expression &
operator*=(const RCP<const Basic> &other)¶
-
Expression &
operator/=(const Expression &other)¶ Overload Division and assignment (/=)
-
Expression &
operator/=(const RCP<const Basic> &other)¶
-
bool
operator==(const Expression &other) const¶ Overload check equality (==)
-
bool
operator!=(const Expression &other) const¶ Overload check not equal (!=)
-
const RCP<const Basic> &
get_basic() const¶ Method to get Basic from Expression.
Friends
-
friend std::ostream &
operator<<(std::ostream &os, const Expression &expr)¶ Overload stream operator.
-
friend Expression
operator+(const Expression &a, const Expression &b)¶ Overload addition.
-
friend Expression
operator+(const RCP<const Basic> &a, const Expression &b)¶
-
friend Expression
operator+(const Expression &a, const RCP<const Basic> &b)¶
-
friend Expression
operator-(const Expression &a, const Expression &b)¶ Overload subtraction.
-
friend Expression
operator-(const RCP<const Basic> &a, const Expression &b)¶
-
friend Expression
operator-(const Expression &a, const RCP<const Basic> &b)¶
-
friend Expression
operator*(const Expression &a, const Expression &b)¶ Overload multiplication.
-
friend Expression
operator*(const RCP<const Basic> &a, const Expression &b)¶
-
friend Expression
operator*(const Expression &a, const RCP<const Basic> &b)¶
-
friend Expression
operator/(const Expression &a, const Expression &b)¶ Overload Division.
-
friend Expression
operator/(const RCP<const Basic> &a, const Expression &b)¶
-
friend Expression
operator/(const Expression &a, const RCP<const Basic> &b)¶
-