hobbes
a language, embedded compiler, and runtime for efficient dynamic expression evaluation, data storage and analysis
Classes | Public Member Functions | Static Public Member Functions | Static Private Member Functions | List of all members
hobbes::InvokeP Class Reference
Inheritance diagram for hobbes::InvokeP:
Inheritance graph
Collaboration diagram for hobbes::InvokeP:
Collaboration graph

Classes

struct  RewriteInvokes
 

Public Member Functions

bool refine (const TEnvPtr &tenv, const ConstraintPtr &cst, MonoTypeUnifier *u, Definitions *ds)
 
bool satisfied (const TEnvPtr &tenv, const ConstraintPtr &cst, Definitions *ds) const
 
bool satisfiable (const TEnvPtr &tenv, const ConstraintPtr &cst, Definitions *ds) const
 
void explain (const TEnvPtr &tenv, const ConstraintPtr &cst, const ExprPtr &e, Definitions *ds, annmsgs *msgs)
 
ExprPtr unqualify (const TEnvPtr &tenv, const ConstraintPtr &cst, const ExprPtr &e, Definitions *ds) const
 
PolyTypePtr lookup (const std::string &vn) const
 
SymSet bindings () const
 
FunDeps dependencies (const ConstraintPtr &cst) const
 

Static Public Member Functions

static std::string constraintName ()
 
static std::string netInvoke ()
 

Static Private Member Functions

static bool decodeConstraint (const ConstraintPtr &c, MonoTypePtr *ch, MonoTypePtr *expr, MonoTypePtr *inty, MonoTypePtr *outty)
 
static std::string makeInvokeFn (const TEnvPtr &tenv, const ConstraintPtr &cst, Definitions *ds, const LexicalAnnotation &la)
 

Member Function Documentation

◆ bindings()

SymSet hobbes::InvokeP::bindings ( ) const
inlinevirtual

Implements hobbes::Unqualifier.

◆ constraintName()

static std::string hobbes::InvokeP::constraintName ( )
inlinestatic

◆ decodeConstraint()

static bool hobbes::InvokeP::decodeConstraint ( const ConstraintPtr c,
MonoTypePtr ch,
MonoTypePtr expr,
MonoTypePtr inty,
MonoTypePtr outty 
)
inlinestaticprivate

◆ dependencies()

FunDeps hobbes::InvokeP::dependencies ( const ConstraintPtr cst) const
inlinevirtual

Implements hobbes::Unqualifier.

◆ explain()

void hobbes::InvokeP::explain ( const TEnvPtr tenv,
const ConstraintPtr cst,
const ExprPtr e,
Definitions ds,
annmsgs msgs 
)
inlinevirtual

Implements hobbes::Unqualifier.

◆ lookup()

PolyTypePtr hobbes::InvokeP::lookup ( const std::string &  vn) const
inlinevirtual

Implements hobbes::Unqualifier.

◆ makeInvokeFn()

static std::string hobbes::InvokeP::makeInvokeFn ( const TEnvPtr tenv,
const ConstraintPtr cst,
Definitions ds,
const LexicalAnnotation la 
)
inlinestaticprivate

◆ netInvoke()

static std::string hobbes::InvokeP::netInvoke ( )
inlinestatic

◆ refine()

bool hobbes::InvokeP::refine ( const TEnvPtr tenv,
const ConstraintPtr cst,
MonoTypeUnifier u,
Definitions ds 
)
inlinevirtual

Implements hobbes::Unqualifier.

◆ satisfiable()

bool hobbes::InvokeP::satisfiable ( const TEnvPtr tenv,
const ConstraintPtr cst,
Definitions ds 
) const
inlinevirtual

Implements hobbes::Unqualifier.

◆ satisfied()

bool hobbes::InvokeP::satisfied ( const TEnvPtr tenv,
const ConstraintPtr cst,
Definitions ds 
) const
inlinevirtual

Implements hobbes::Unqualifier.

◆ unqualify()

ExprPtr hobbes::InvokeP::unqualify ( const TEnvPtr tenv,
const ConstraintPtr cst,
const ExprPtr e,
Definitions ds 
) const
inlinevirtual

Implements hobbes::Unqualifier.


The documentation for this class was generated from the following file: