Cryptol.TypeCheck.Monad

data InferInput

data NameSeeds

nameSeeds

data InferOutput a

runInferM

data InferM a

data DefLoc

data RO

data RW

io

inRange

inRangeMb

curRange

recordError

recordWarning

newGoal

newGoals

getGoals

addGoals

collectGoals

newHasGoal

addHasGoal

getHasGoals

solveHasGoal

newName

newGoalName

newTVar

newTVar'

newTParam

newType

unify

applySubst

getSubst

extendSubst

varsWithAsmps

lookupVar

lookupTVar

lookupTSyn

lookupNewtype

existVar

getTSyns

getNewtypes

getTVars

getBoundInScope

getMonoBinds

checkTShadowing

withTParam

withTParams

withTySyn

withNewtype

withVarType

withVarTypes

withVar

withMonoType

withMonoTypes

withDecls

inNewScope

data KindM a

data KRO

data KRW

runKindM

data LkpTyVar

kLookupTyVar

kWildOK

kRecordError

kRecordWarning

kNewType

kLookupTSyn

kLookupNewtype

kExistTVar

kInstantiateT

kSetKind

kInRange

kNewGoals

kInInferM