|
hobbes
a language, embedded compiler, and runtime for efficient dynamic expression evaluation, data storage and analysis
|
#include <expr.H>


Public Types | |
| typedef std::pair< std::string, ExprPtr > | Binding |
| typedef std::vector< Binding > | Bindings |
Public Types inherited from hobbes::ExprCase< LetRec > | |
| typedef ExprCase< LetRec > | Base |
Public Member Functions | |
| LetRec (const Bindings &, const ExprPtr &, const LexicalAnnotation &) | |
| bool | operator== (const LetRec &) const |
| const Bindings & | bindings () const |
| const ExprPtr & | bodyExpr () const |
| str::seq | varNames () const |
| Bindings & | bindings () |
| void | bodyExpr (const ExprPtr &) |
| Expr * | clone () const |
| void | show (std::ostream &) const |
| void | showAnnotated (std::ostream &) const |
Public Member Functions inherited from hobbes::ExprCase< LetRec > | |
| ExprCase (const LexicalAnnotation &) | |
| bool | operator== (const Expr &rhs) const |
Public Member Functions inherited from hobbes::Expr | |
| virtual | ~Expr () |
| const QualTypePtr & | type () const |
| void | type (const QualTypePtr &ty) |
| int | case_id () const |
Public Member Functions inherited from hobbes::LexicallyAnnotated | |
| LexicallyAnnotated (const LexicallyAnnotated &) | |
| LexicallyAnnotated (const LexicalAnnotation &) | |
| LexicallyAnnotated (const LexRange &) | |
| LexicallyAnnotated (const Pos &, const Pos &) | |
| const LexicalAnnotation & | la () const |
Static Public Attributes | |
| static const int | type_case_id = 11 |
Private Attributes | |
| Bindings | bs |
| ExprPtr | e |
Additional Inherited Members | |
Static Public Member Functions inherited from hobbes::LexicallyAnnotated | |
| static void | pushFileContext (const std::string &) |
| static void | pushLiteralContext (const std::string &) |
| static void | popContext () |
| static LexicalAnnotation | make (const Pos &, const Pos &) |
Protected Member Functions inherited from hobbes::Expr | |
| Expr (int cid, const LexicalAnnotation &) | |
| typedef std::pair<std::string, ExprPtr> hobbes::LetRec::Binding |
| typedef std::vector<Binding> hobbes::LetRec::Bindings |
| hobbes::LetRec::LetRec | ( | const Bindings & | bs, |
| const ExprPtr & | e, | ||
| const LexicalAnnotation & | la | ||
| ) |
| const LetRec::Bindings & hobbes::LetRec::bindings | ( | ) | const |
| LetRec::Bindings & hobbes::LetRec::bindings | ( | ) |
| const ExprPtr & hobbes::LetRec::bodyExpr | ( | ) | const |
| void hobbes::LetRec::bodyExpr | ( | const ExprPtr & | e | ) |
|
virtual |
Implements hobbes::Expr.
|
virtual |
Implements hobbes::ExprCase< LetRec >.
|
virtual |
Implements hobbes::Expr.
|
virtual |
Implements hobbes::Expr.
| str::seq hobbes::LetRec::varNames | ( | ) | const |
|
private |
|
private |
|
static |
1.8.13