Class SymbolicFunction#

Inheritance Relationships#

Base Type#

Derived Types#

Class Documentation#

class SymbolicFunction : public SymbolicValImpl#

Subclassed by SymbolicDotExp, SymbolicExtendVar, SymbolicFunctionPtrCall, SymbolicPow

Public Types

typedef std::vector<SymbolicVal> Arguments#
typedef std::vector<SymbolicVal>::const_iterator const_iterator#

Public Functions

inline SymbolicFunction(AstInterface::OperatorEnum _t, const std::string &_op, const Arguments &v)#
inline SymbolicFunction(AstInterface::OperatorEnum _t, const std::string &_op, const SymbolicVal &v1, const SymbolicVal &v2)#
inline SymbolicFunction(AstInterface::OperatorEnum _t, const std::string &_op, const SymbolicVal &v)#
inline SymbolicFunction(const SymbolicFunction &that)#
inline virtual ~SymbolicFunction()#
virtual std::string toString() const#
inline virtual SymbolicValType GetValType() const#
virtual AstNodePtr CodeGen(AstInterface &fa) const#
inline virtual void Visit(SymbolicVisitor *v) const#
bool operator==(const SymbolicFunction &that) const#
inline std::string GetOp() const#
inline const Arguments &get_args() const#
inline SymbolicVal get_arg(int index) const#
inline const_iterator args_begin() const#
inline const_iterator args_end() const#
inline SymbolicVal first_arg() const#
inline SymbolicVal last_arg() const#
inline unsigned NumOfArgs() const#
inline virtual SymbolicVal GetUnknownOpds() const#
inline virtual bool GetConstOpd(int &val1, int &val2) const#
inline virtual SymbolicValImpl *Clone() const#
inline virtual SymbolicFunction *cloneFunction(const Arguments &args) const#

Protected Types

typedef AstInterface::OperatorEnum OpType#

Protected Attributes

OpType t#