smats  0.0.1
Satisfability Modulo Arithmetic Theories Symbols
Loading...
Searching...
No Matches
smats::ExpressionMulFactory< T > Class Template Reference

Public Types

using ExpressionMap = std::map<Expression<T>, Expression<T>>
 

Public Member Functions

 ExpressionMulFactory (T constant, ExpressionMap expr_to_coeff_map)
 
 ExpressionMulFactory (const Expression< T > &e)
 
 ExpressionMulFactory (const std::shared_ptr< const ExpressionCell< T > > &e)
 
 ExpressionMulFactory (const ExpressionCell< T > &e)
 
ExpressionMulFactory< T > & operator*= (const T &o)
 
ExpressionMulFactory< T > & operator*= (const Expression< T > &o)
 
ExpressionMulFactory< T > & operator*= (const std::shared_ptr< ExpressionCell< T > > &o)
 
ExpressionMulFactory< T > & operator*= (const ExpressionCell< T > &o)
 
ExpressionMulFactory< T > & multiply (const T &o)
 
ExpressionMulFactory< T > & multiply (const Expression< T > &o)
 
ExpressionMulFactory< T > & multiply (const std::shared_ptr< ExpressionCell< T > > &o)
 
ExpressionMulFactory< T > & multiply (const ExpressionCell< T > &o)
 
ExpressionMulFactory< T > & multiply (const T &constant, const ExpressionMap &expr_to_coeff_map)
 
ExpressionMulFactory< T > & multiply (const Expression< T > &base, const Expression< T > &exponent)
 
ExpressionMulFactory< T > & negate ()
 
Expression< T > build () const
 
Expression< T > consume ()
 

Private Attributes

bool consumed_ {false}
 
bool is_expanded_ {false}
 
constant_ {1}
 
ExpressionMap base_to_exponent_map_
 

The documentation for this class was generated from the following files: