#include "AST.hxx"#include "Options.hxx"#include "UocInfo.hxx"#include "Type.hxx"#include "TypeScheme.hxx"#include "TypeMut.hxx"#include "Typeclass.hxx"#include "Trail.hxx"#include "inter-pass.hxx"#include "TypeInferCommon.hxx"Go to the source code of this file.
Functions | |
| bool | typeInfer (std::ostream &errStream, GCPtr< AST > ast, GCPtr< Environment< TypeScheme > > gamma, GCPtr< Environment< CVector< GCPtr< Instance > > > > instEnv, GCPtr< CVector< GCPtr< Type > > >impTypes, bool isVP, GCPtr< TCConstraints > tcc, unsigned long uflags, GCPtr< Trail > trail, int mode, unsigned flags) |
| bool | typeEqInfer (std::ostream &errStream, GCPtr< AST > ast, GCPtr< Environment< TypeScheme > > gamma, GCPtr< Environment< CVector< GCPtr< Instance > > > > instEnv, GCPtr< CVector< GCPtr< Type > > >impTypes, bool isVP, GCPtr< TCConstraints > tcc, unsigned long uflags, GCPtr< Trail > trail, int mode, unsigned flags) |
| std::string | ctypeAsString (GCPtr< Type > t, GCPtr< Constraints > cset, bool showAllCts=false) |
| std::string ctypeAsString | ( | GCPtr< Type > | t, | |
| GCPtr< Constraints > | cset, | |||
| bool | showAllCts = false | |||
| ) |
Referenced by typeEqInfer().
| bool typeEqInfer | ( | std::ostream & | errStream, | |
| GCPtr< AST > | ast, | |||
| GCPtr< Environment< TypeScheme > > | gamma, | |||
| GCPtr< Environment< CVector< GCPtr< Instance > > > > | instEnv, | |||
| GCPtr< CVector< GCPtr< Type > > > | impTypes, | |||
| bool | isVP, | |||
| GCPtr< TCConstraints > | tcc, | |||
| unsigned long | uflags, | |||
| GCPtr< Trail > | trail, | |||
| int | mode, | |||
| unsigned | flags | |||
| ) |
Definition at line 198 of file TypeEqInfer.cxx.
References addCcCst(), addEqCst(), addPcst(), addSubCst(), argVec, assert(), at_apply, at_argVec, at_boolLiteral, at_charLiteral, at_constraints, at_define, at_deref, at_dummyType, at_dup, at_exceptionType, at_floatLiteral, at_fn, at_fnargVec, at_ident, at_identPattern, at_if, at_interface, at_intLiteral, at_lambda, at_module, at_mutableType, at_primaryType, at_select, at_setbang, at_stringLiteral, at_struct_apply, at_ucon_apply, at_unit, BF_REBIND, bindIdentDef(), buildFnFromApp(), COMP_BYREF, ctr, ctypeAsString(), DEF_MODE, EqUnify(), Instantiate(), PRINT, TI_TCC_SUB, TI_TYP_APP, TI_TYP_EXP, TY_CT_SUBSUMED, TYPEEQINFER, and USE_MODE.
| bool typeInfer | ( | std::ostream & | errStream, | |
| GCPtr< AST > | ast, | |||
| GCPtr< Environment< TypeScheme > > | gamma, | |||
| GCPtr< Environment< CVector< GCPtr< Instance > > > > | instEnv, | |||
| GCPtr< CVector< GCPtr< Type > > > | impTypes, | |||
| bool | isVP, | |||
| GCPtr< TCConstraints > | tcc, | |||
| unsigned long | uflags, | |||
| GCPtr< Trail > | trail, | |||
| int | mode, | |||
| unsigned | flags | |||
| ) |
Referenced by UocInfo::DoTypeCheck().
1.4.7