Base class for expressions that can be evaluated. More...
#include <Value.h>
Public Member Functions | |
| Value (UniqPtr< Identifier > &, UniqPtr< Expression > &, const Type &t) | |
| const Identifier & | name () const |
| const Expression & | value () 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 |
Additional Inherited Members | |
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) | |