Collaboration diagram for SymEngine::Expression: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.