hobbes
a language, embedded compiler, and runtime for efficient dynamic expression evaluation, data storage and analysis
Classes | Namespaces | Functions
slookup.C File Reference
#include <hobbes/lang/preds/hasfield/slookup.H>
#include <hobbes/lang/preds/class.H>
#include <hobbes/lang/tyunqualify.H>
#include <hobbes/lang/typeinf.H>
#include <hobbes/util/array.H>
Include dependency graph for slookup.C:

Classes

struct  hobbes::HFSLookupUnqualify
 

Namespaces

 hobbes
 

Functions

static MonoTypePtr hobbes::impliedType (const std::string &fieldName)
 
static MonoTypePtr hobbes::impliedType (const MonoTypePtr &fieldName)
 
bool hobbes::mightRewriteToSLookup (const TEnvPtr &tenv, const MonoTypePtr &rty, const MonoTypePtr &fieldName, const MonoTypePtr &fty, Definitions *ds)
 
MonoTypePtr hobbes::rewritesToSLookup (const TEnvPtr &tenv, const MonoTypePtr &rty, const MonoTypePtr &fieldName, const MonoTypePtr &fty, Definitions *ds)
 
ExprPtr hobbes::rewriteSLookup (const TEnvPtr &tenv, const ExprPtr &r, const std::string &fieldName, const MonoTypePtr &rty, const MonoTypePtr &fty, Definitions *ds, const LexicalAnnotation &la)