pub enum EvalTyErr {
LetNonRet(ExpTerm),
AppNonLam(ExpTerm),
SplitNonPair(RtVal),
IfNonBool(RtVal),
CaseNonInj(RtVal),
UnrollNonRoll(RtVal),
ThunkNonName(RtVal),
ForceNonThunk(RtVal),
RefThunkNonThunk(RtVal),
RefNonName(RtVal),
GetNonRef(RtVal),
WriteScopeWithoutName0,
WriteScopeWithoutName1,
WriteScopeWithoutName2,
NameFnApp0,
NameFnApp1,
PrimAppNameBin(RtVal, RtVal),
PrimAppNatLt(RtVal, RtVal),
PrimAppNatEq(RtVal, RtVal),
PrimAppNatLte(RtVal, RtVal),
PrimAppNatPlus(RtVal, RtVal),
}
Dynamic type errors ("stuck cases" for evaluation)
For each place in the eval
function where a dynamic type error
may arise that prevents us from progressing, we give a constructor
with the relevant information (first for documentation purposes,
and secondly for future error messages).
Performs copy-assignment from source
. Read more
Formats the value using the given formatter. Read more
This method tests for self
and other
values to be equal, and is used by ==
. Read more
This method tests for !=
.