isomatch
Public Member Functions | Public Attributes | Protected Attributes | List of all members
ExpressionBase Struct Referenceabstract

#include <gateExpression.h>

Inheritance diagram for ExpressionBase:
ExpressionBinOp ExpressionConst ExpressionLongConst ExpressionMerge ExpressionSlice ExpressionUnOp ExpressionUnOpCst ExpressionVar

Public Member Functions

 ExpressionBase (const expr::ExpressionType &type)
 
virtual ~ExpressionBase ()
 
virtual sign_t sign () const =0
 
bool equals (const ExpressionBase &oth) const
 
void addRef ()
 The object is referenced somewhere. More...
 
void deleteSelf ()
 Call this instead of delete More...
 

Public Attributes

expr::ExpressionType type
 Type of the expression (used for casts) More...
 

Protected Attributes

int refcount
 

Detailed Description

Base expression type, inherited by every "real" expression type

Constructor & Destructor Documentation

◆ ExpressionBase()

ExpressionBase::ExpressionBase ( const expr::ExpressionType type)
inline

◆ ~ExpressionBase()

virtual ExpressionBase::~ExpressionBase ( )
inlinevirtual

Member Function Documentation

◆ addRef()

void ExpressionBase::addRef ( )
inline

The object is referenced somewhere.

◆ deleteSelf()

void ExpressionBase::deleteSelf ( )
inline

Call this instead of delete

◆ equals()

bool ExpressionBase::equals ( const ExpressionBase oth) const

Check whether two experessions are formally equal

◆ sign()

virtual sign_t ExpressionBase::sign ( ) const
pure virtual

Member Data Documentation

◆ refcount

int ExpressionBase::refcount
protected

◆ type

expr::ExpressionType ExpressionBase::type

Type of the expression (used for casts)


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