Check for ellipsis ....
Methods
isEllipsis :: a -> Bool
Instances1IsEllipsis
IsEllipsis PatternDefined in Agda-2.7.0.1 · Agda.Syntax.Concrete.PatternIs the pattern just
...?
:: a typeCtrl KGHC 9.10.3 · lts/ghc-9.10.x · 248f8f0 · 2026-10-05
ModuleAgda-2.7.0.1Haskell2010
Tools for patterns in concrete syntax.
Check for ellipsis ....
isEllipsis :: a -> BoolIsEllipsis PatternDefined in Agda-2.7.0.1 · Agda.Syntax.Concrete.PatternIs the pattern just ...?
Has the lhs an occurrence of the ellipsis ...?
hasEllipsis :: a -> BoolHasEllipsis LHSDefined in Agda-2.7.0.1 · Agda.Syntax.Concrete.PatternDoes the lhs contain an ellipsis?
HasEllipsis PatternDefined in Agda-2.7.0.1 · Agda.Syntax.Concrete.PatternIsWithP PatternDefined in Agda-2.7.0.1 · Agda.Syntax.Concrete.PatternIsWithP (Pattern' e)Defined in Agda-2.7.0.1 · Agda.Syntax.Abstract.Pattern · orphanCheck for with-pattern.
IsWithP p => IsWithP (Arg p)Defined in Agda-2.7.0.1 · Agda.Syntax.Concrete.PatternIsWithP p => IsWithP (Named n p)Defined in Agda-2.7.0.1 · Agda.Syntax.Concrete.PatternConstruct the LHSPatternView of the given list (if not empty).
Return the view and the remaining patterns.
Add applicative patterns (non-projection / non-with patterns) to the right.
Add with-patterns to the right.
Append patterns to LHSCore, separating with patterns from the rest.
Does the LHS contain projection patterns?
Generic pattern traversal.
See APatternLike.
foldrCPattern :: Monoid m => (Pattern -> m -> m) -> p -> mFold pattern.
traverseCPatternA :: (Applicative m, Functor m) => (Pattern -> m Pattern -> m Pattern) -> p -> m pTraverse pattern with option of post-traversal modification.
traverseCPatternM :: Monad m => (Pattern -> m Pattern) -> (Pattern -> m Pattern) -> p -> m pTraverse pattern.
CPatternLike PatternDefined in Agda-2.7.0.1 · Agda.Syntax.Concrete.PatternCPatternLike p => CPatternLike (Arg p)Defined in Agda-2.7.0.1 · Agda.Syntax.Concrete.PatternCPatternLike p => CPatternLike (FieldAssignment' p)Defined in Agda-2.7.0.1 · Agda.Syntax.Concrete.PatternCPatternLike p => CPatternLike (List1 p)Defined in Agda-2.7.0.1 · Agda.Syntax.Concrete.PatternCPatternLike p => CPatternLike (List2 p)Defined in Agda-2.7.0.1 · Agda.Syntax.Concrete.PatternCPatternLike p => CPatternLike (Maybe p)Defined in Agda-2.7.0.1 · Agda.Syntax.Concrete.PatternCPatternLike p => CPatternLike [p]Defined in Agda-2.7.0.1 · Agda.Syntax.Concrete.PatternCPatternLike p => CPatternLike (Named n p)Defined in Agda-2.7.0.1 · Agda.Syntax.Concrete.Pattern(CPatternLike a, CPatternLike b) => CPatternLike (a, b)Defined in Agda-2.7.0.1 · Agda.Syntax.Concrete.PatternCompute a value from each subpattern and collect all values in a monoid.
preTraverseCPatternM :: (CPatternLike p, Monad m)=> (Pattern -> m Pattern)pre: Modification before recursion.
-> p-> m pTraverse pattern(s) with a modification before the recursive descent.
postTraverseCPatternM :: (CPatternLike p, Monad m)=> (Pattern -> m Pattern)post: Modification after recursion.
-> p-> m pTraverse pattern(s) with a modification after the recursive descent.
Map pattern(s) with a modification after the recursive descent.
Get all the identifiers in a pattern in left-to-right order.
Implemented using difference lists.
Get all the identifiers in a pattern in left-to-right order.
Does the pattern contain a with-pattern? (Shortcutting.)
Is WithP?
Count the number of with-subpatterns in a pattern?
Compute the context in which the ellipsis occurs, if at all. If there are several occurrences, this is an error. This only counts ellipsis that haven't already been expanded.
View a pattern p as a list p0 .. pn where p0 is the identifier
(in most cases a constructor).
Pattern needs to be parsed already (operators resolved).