Safe Haskell | None |
---|---|
Language | Haskell2010 |
Tools to manipulate patterns in abstract syntax in the TCM (type checking monad).
Synopsis
- expandLitPattern :: (MonadError TCErr m, MonadTCEnv m, ReadTCState m, HasBuiltins m) => Pattern -> m Pattern
- expandPatternSynonyms' :: forall e. Pattern' e -> TCM (Pattern' e)
- class ExpandPatternSynonyms a where
- expandPatternSynonyms :: a -> TCM a
Documentation
expandLitPattern :: (MonadError TCErr m, MonadTCEnv m, ReadTCState m, HasBuiltins m) => Pattern -> m Pattern Source #
Expand literal integer pattern into suc/zero constructor patterns.
expandPatternSynonyms' :: forall e. Pattern' e -> TCM (Pattern' e) Source #
Expand away (deeply) all pattern synonyms in a pattern.
class ExpandPatternSynonyms a where Source #
Nothing
expandPatternSynonyms :: a -> TCM a Source #
default expandPatternSynonyms :: (Traversable f, ExpandPatternSynonyms b, f b ~ a) => a -> TCM a Source #
Instances
ExpandPatternSynonyms a => ExpandPatternSynonyms [a] Source # | |
Defined in Agda.TypeChecking.Patterns.Abstract expandPatternSynonyms :: [a] -> TCM [a] Source # | |
ExpandPatternSynonyms a => ExpandPatternSynonyms (Maybe a) Source # | |
Defined in Agda.TypeChecking.Patterns.Abstract | |
ExpandPatternSynonyms a => ExpandPatternSynonyms (Arg a) Source # | |
Defined in Agda.TypeChecking.Patterns.Abstract | |
ExpandPatternSynonyms a => ExpandPatternSynonyms (FieldAssignment' a) Source # | |
Defined in Agda.TypeChecking.Patterns.Abstract expandPatternSynonyms :: FieldAssignment' a -> TCM (FieldAssignment' a) Source # | |
ExpandPatternSynonyms (Pattern' e) Source # | |
Defined in Agda.TypeChecking.Patterns.Abstract | |
ExpandPatternSynonyms a => ExpandPatternSynonyms (Named n a) Source # | |
Defined in Agda.TypeChecking.Patterns.Abstract |