Agda-2.5.2: A dependently typed functional programming language and proof assistant

Safe Haskell | None
Language | Haskell2010

Agda.TypeChecking.Rules.LHS.Implicit

Synopsis

- insertImplicitProblem :: Problem -> TCM Problem
- expandImplicitPattern :: Type -> NamedArg Pattern -> TCM (NamedArg Pattern)
- expandImplicitPattern' :: Type -> NamedArg Pattern -> TCM (Maybe (NamedArg Pattern))
- implicitP :: ArgInfo -> NamedArg Pattern
- insertImplicitPatterns :: ExpandHidden -> [NamedArg Pattern] -> Telescope -> TCM [NamedArg Pattern]
- insertImplicitSizeLtPatterns :: Type -> TCM [NamedArg Pattern]
- insertImplicitPatternsT :: ExpandHidden -> [NamedArg Pattern] -> Type -> TCM [NamedArg Pattern]

# Documentation

insertImplicitProblem :: Problem -> TCM Problem #

Insert implicit patterns in a problem.

expandImplicitPattern :: Type -> NamedArg Pattern -> TCM (NamedArg Pattern) #

Eta-expand implicit pattern if of record type.

expandImplicitPattern' :: Type -> NamedArg Pattern -> TCM (Maybe (NamedArg Pattern)) #

Try to eta-expand implicit pattern. Returns `Nothing` unless dealing with a record type that has eta-expansion and a constructor `c`. In this case, it returns `Just` `c _ _ ... _` (record constructor applied to as many implicit patterns as there are fields).

implicitP :: ArgInfo -> NamedArg Pattern #

insertImplicitPatterns :: ExpandHidden -> [NamedArg Pattern] -> Telescope -> TCM [NamedArg Pattern] #

Insert implicit patterns in a list of patterns. Even if `DontExpandLast`, trailing SIZELT patterns are inserted.

insertImplicitSizeLtPatterns :: Type -> TCM [NamedArg Pattern] #

Insert trailing SizeLt patterns, if any.

insertImplicitPatternsT :: ExpandHidden -> [NamedArg Pattern] -> Type -> TCM [NamedArg Pattern] #

Insert implicit patterns in a list of patterns. Even if `DontExpandLast`, trailing SIZELT patterns are inserted.