idris-1.3.4: Functional Programming Language with Dependent Types

License | BSD3
Maintainer | The Idris Community.
Safe Haskell | Safe-Inferred
Language | Haskell2010

Idris.Core.Typecheck

Description

# Documentation

convertsC :: Context -> Env -> Term -> Term -> StateT UCs TC () #

converts :: Context -> Env -> Term -> Term -> TC () #

isHole :: (a, b, Binder b) -> Bool #

errEnv :: [(a, b, Binder b)] -> [(a, b)] #

isType :: Context -> Env -> Term -> TC () #

convType :: String -> Context -> Env -> Term -> StateT UCs TC () #

recheck :: String -> Context -> Env -> Raw -> Term -> TC (Term, Type, UCs) #

recheck_borrowing :: Bool -> [Name] -> String -> Context -> Env -> Raw -> Term -> TC (Term, Type, UCs) #

check :: Context -> Env -> Raw -> TC (Term, Type) #

check' :: Bool -> String -> Context -> Env -> Raw -> StateT UCs TC (Term, Type) #

data UniqueUse #

Constructors

Never |
Once |
LendOnly |
Many |

#### Instances

Instances details

Eq UniqueUse # |
Instance details Defined in Idris.Core.Typecheck Methods (==) :: UniqueUse -> UniqueUse -> Bool (/=) :: UniqueUse -> UniqueUse -> Bool

checkUnique :: [Name] -> Context -> Env -> Term -> TC () #