AmpGen 2.1
Loading...
Searching...
No Matches
AmpGen::IBinaryExpression Class Referenceabstract

Detailed Description

those that take a pair of arguments (such as \(+,-,\times,/\))

Definition at line 287 of file Expression.h.

Public Member Functions

 IBinaryExpression (const Expression &l, const Expression &r)
 
 IBinaryExpression (const Expression &pack)
 
void resolve (ASTResolver &resolver) const override
 Resolve the dependencies of a tree using an ASTResolver, which keeps track of parameters, dependent sub-trees, etc.
 
complex_t operator() () const override=0
 Evaluate the expression using the tree, will generally be very slow but ocassionally useful for debugging.
 
Expression l () const
 
Expression r () const
 
virtual std::string to_string (const ASTResolver *resolver=nullptr) const =0
 Called to convert the Expression tree into source code.
 

Protected Attributes

Expression lval
 
Expression rval
 
Inheritance diagram for AmpGen::IBinaryExpression:
AmpGen::IExpression AmpGen::ATan2 AmpGen::And AmpGen::Divide AmpGen::Equal AmpGen::Fmod AmpGen::GreaterThan AmpGen::GreaterThanEqualTo AmpGen::LessThan AmpGen::LessThanEqualTo AmpGen::Or AmpGen::Pow AmpGen::Product AmpGen::Sub AmpGen::Sum

Constructor & Destructor Documentation

◆ IBinaryExpression() [1/2]

AmpGen::IBinaryExpression::IBinaryExpression ( const Expression & l,
const Expression & r )
inline

Definition at line 289 of file Expression.h.

◆ IBinaryExpression() [2/2]

AmpGen::IBinaryExpression::IBinaryExpression ( const Expression & pack)
inline

Definition at line 290 of file Expression.h.

Member Function Documentation

◆ l()

Expression AmpGen::IBinaryExpression::l ( ) const
inline

Definition at line 306 of file Expression.h.

◆ operator()()

◆ r()

Expression AmpGen::IBinaryExpression::r ( ) const
inline

Definition at line 307 of file Expression.h.

◆ resolve()

void AmpGen::IBinaryExpression::resolve ( ASTResolver & resolver) const
overridevirtual
Parameters
resolverresolver object to use

Implements AmpGen::IExpression.

◆ to_string()

Member Data Documentation

◆ lval

Expression AmpGen::IBinaryExpression::lval
protected

Definition at line 309 of file Expression.h.

◆ rval

Expression AmpGen::IBinaryExpression::rval
protected

Definition at line 310 of file Expression.h.


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