An expression that can contain intermediate values. More...
#include <CompoundExpr.h>
Public Member Functions | |
CompoundExpression (UniqPtr< Scope > &&values, UniqPtr< Expression > &result, const SourceRange &loc) | |
const Expression & | result () const |
virtual void | PrettyPrint (Bytestream &, size_t indent=0) const override |
Print a human-readable representation to an output stream and return that output stream. | |
virtual void | Accept (Visitor &) const |
virtual dag::ValuePtr | evaluate (EvalContext &) const override |
Public Member Functions inherited from fabrique::HasSource | |
HasSource (const SourceRange &src) | |
const SourceRange & | source () const |
Public Member Functions inherited from fabrique::Printable | |
Printable (const Printable &) | |
Printable & | operator= (const Printable &) |
virtual std::string | str () const |
Public Member Functions inherited from fabrique::Visitable< Visitor > | |
virtual void | Accept (Visitor &) const =0 |
Public Member Functions inherited from fabrique::Typed | |
Typed (const Type &t) | |
virtual const Type & | type () const |
Public Member Functions inherited from fabrique::ast::Scope | |
Scope (const Scope *parent, const std::string &name, const Type &argumentsType, TypeContext &) | |
Scope (Scope &&) | |
const SymbolMap & | symbols () const |
const std::string & | name () const |
bool | hasArguments () const |
const Type & | arguments () const |
const UniqPtrVec< Value > & | values () const |
bool | contains (const Identifier &) const |
virtual const Type & | Lookup (const Identifier &) const |
void | Register (const Argument *) |
void | Register (const Parameter *) |
void | Register (const Value &) |
void | Take (Value *) |
void | Take (UniqPtr< Value > &) |
UniqPtrVec< Value > | TakeValues () |
Additional Inherited Members | |
Public Types inherited from fabrique::ast::Scope | |
typedef StringMap< const Type & > | SymbolMap |
Protected Member Functions inherited from fabrique::ast::Expression | |
Expression (const Type &t, const SourceRange &src) | |
Protected Member Functions inherited from fabrique::ast::Node | |
Node (const SourceRange &src) | |
An expression that can contain intermediate values.
Definition at line 53 of file CompoundExpr.h.