hobbes
a language, embedded compiler, and runtime for efficient dynamic expression evaluation, data storage and analysis
|
#include <expr.H>
Public Types | |
typedef std::vector< std::string > | VarNames |
![]() | |
typedef ExprCase< Fn > | Base |
Public Member Functions | |
Fn (const VarNames &vs, const ExprPtr &e, const LexicalAnnotation &) | |
bool | operator== (const Fn &) const |
const VarNames & | varNames () const |
const ExprPtr & | body () const |
VarNames & | varNames () |
void | body (const ExprPtr &) |
Expr * | clone () const |
void | show (std::ostream &out) const |
void | showAnnotated (std::ostream &out) const |
![]() | |
ExprCase (const LexicalAnnotation &) | |
bool | operator== (const Expr &rhs) const |
![]() | |
virtual | ~Expr () |
const QualTypePtr & | type () const |
void | type (const QualTypePtr &ty) |
int | case_id () const |
![]() | |
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 = 12 |
Private Attributes | |
VarNames | vs |
ExprPtr | e |
Additional Inherited Members | |
![]() | |
static void | pushFileContext (const std::string &) |
static void | pushLiteralContext (const std::string &) |
static void | popContext () |
static LexicalAnnotation | make (const Pos &, const Pos &) |
![]() | |
Expr (int cid, const LexicalAnnotation &) | |
typedef std::vector<std::string> hobbes::Fn::VarNames |
hobbes::Fn::Fn | ( | const VarNames & | vs, |
const ExprPtr & | e, | ||
const LexicalAnnotation & | la | ||
) |
const ExprPtr & hobbes::Fn::body | ( | ) | const |
void hobbes::Fn::body | ( | const ExprPtr & | ne | ) |
|
virtual |
Implements hobbes::Expr.
|
virtual |
Implements hobbes::ExprCase< Fn >.
|
virtual |
Implements hobbes::Expr.
|
virtual |
Implements hobbes::Expr.
const Fn::VarNames & hobbes::Fn::varNames | ( | ) | const |
Fn::VarNames & hobbes::Fn::varNames | ( | ) |
|
private |
|
static |
|
private |