Public Member 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 (RCP< const Basic > &&o) | |
Expression (const RCP< const Basic > &o) | |
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. | |
virtual | ~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 RCP< const Basic > &other) const |
bool | operator!= (const Expression &other) const |
Overload check not equal (!=) | |
bool | operator!= (const RCP< const Basic > &other) const |
const RCP< const Basic > & | get_basic () const |
Method to get Basic from Expression. | |
Private Attributes | |
RCP< const Basic > | m_basic |
Friends | |
std::ostream & | operator<< (std::ostream &os, const Expression &expr) |
Overload stream operator. | |
Expression | operator+ (const Expression &a, const Expression &b) |
Overload addition. | |
Expression | operator+ (const RCP< const Basic > &a, const Expression &b) |
Expression | operator+ (const Expression &a, const RCP< const Basic > &b) |
Expression | operator- (const Expression &a, const Expression &b) |
Overload subtraction. | |
Expression | operator- (const RCP< const Basic > &a, const Expression &b) |
Expression | operator- (const Expression &a, const RCP< const Basic > &b) |
Expression | operator* (const Expression &a, const Expression &b) |
Overload multiplication. | |
Expression | operator* (const RCP< const Basic > &a, const Expression &b) |
Expression | operator* (const Expression &a, const RCP< const Basic > &b) |
Expression | operator/ (const Expression &a, const Expression &b) |
Overload Division. | |
Expression | operator/ (const RCP< const Basic > &a, const Expression &b) |
Expression | operator/ (const Expression &a, const RCP< const Basic > &b) |
Definition at line 28 of file expression.h.