hobbes
a language, embedded compiler, and runtime for efficient dynamic expression evaluation, data storage and analysis
|
#include <expr.H>
Public Member Functions | |
MkVariant (const std::string &lbl, const ExprPtr &e, const LexicalAnnotation &) | |
bool | operator== (const MkVariant &) const |
const std::string & | label () const |
const ExprPtr & | value () const |
void | label (const std::string &) |
void | value (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 = 16 |
Private Attributes | |
std::string | lbl |
ExprPtr | e |
Additional Inherited Members | |
![]() | |
typedef ExprCase< MkVariant > | Base |
![]() | |
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 &) | |
hobbes::MkVariant::MkVariant | ( | const std::string & | lbl, |
const ExprPtr & | e, | ||
const LexicalAnnotation & | la | ||
) |
|
virtual |
Implements hobbes::Expr.
const std::string & hobbes::MkVariant::label | ( | ) | const |
void hobbes::MkVariant::label | ( | const std::string & | nlbl | ) |
|
virtual |
Implements hobbes::ExprCase< MkVariant >.
|
virtual |
Implements hobbes::Expr.
|
virtual |
Implements hobbes::Expr.
const ExprPtr & hobbes::MkVariant::value | ( | ) | const |
void hobbes::MkVariant::value | ( | const ExprPtr & | ne | ) |
|
private |
|
private |
|
static |