hobbes
a language, embedded compiler, and runtime for efficient dynamic expression evaluation, data storage and analysis
|
#include <expr.H>
Public Member Functions | |
virtual bool | operator== (const Expr &) const =0 |
virtual bool | operator< (const Primitive &) const =0 |
virtual MonoTypePtr | primType () const =0 |
Primitive (int cid, const LexicalAnnotation &) | |
![]() | |
virtual | ~Expr () |
virtual void | show (std::ostream &) const =0 |
virtual void | showAnnotated (std::ostream &) const =0 |
virtual Expr * | clone () const =0 |
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 |
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 &) | |
hobbes::Primitive::Primitive | ( | int | cid, |
const LexicalAnnotation & | la | ||
) |
|
pure virtual |
Implemented in hobbes::PrimitiveCase< Case >, hobbes::PrimitiveCase< Float >, hobbes::PrimitiveCase< Double >, hobbes::PrimitiveCase< Unit >, hobbes::PrimitiveCase< Short >, hobbes::PrimitiveCase< Byte >, hobbes::PrimitiveCase< Int >, hobbes::PrimitiveCase< Char >, hobbes::PrimitiveCase< Bool >, and hobbes::PrimitiveCase< Long >.
|
pure virtual |
Implements hobbes::Expr.
Implemented in hobbes::PrimitiveCase< Case >, hobbes::PrimitiveCase< Float >, hobbes::PrimitiveCase< Double >, hobbes::PrimitiveCase< Unit >, hobbes::PrimitiveCase< Short >, hobbes::PrimitiveCase< Byte >, hobbes::PrimitiveCase< Int >, hobbes::PrimitiveCase< Char >, hobbes::PrimitiveCase< Bool >, and hobbes::PrimitiveCase< Long >.
|
pure virtual |
Implemented in hobbes::Double, hobbes::Float, hobbes::Long, hobbes::Int, hobbes::Short, hobbes::Byte, hobbes::Char, hobbes::Bool, and hobbes::Unit.