Safe Haskell | None |
---|---|
Language | Haskell2010 |
Language.Haskell.Tools.Rewrite.Match.Patterns
Description
UPattern matching on pattern-level AST fragments for refactorings.
- pattern VarPat :: forall dom. Name dom -> Pattern dom
- pattern LitPat :: forall dom. Literal dom -> Pattern dom
- pattern InfixAppPat :: forall dom. Pattern dom -> Operator dom -> Pattern dom -> Pattern dom
- pattern AppPat :: forall dom. Name dom -> PatternList dom -> Pattern dom
- pattern TuplePat :: forall dom. PatternList dom -> Pattern dom
- pattern UnboxTuplePat :: forall dom. PatternList dom -> Pattern dom
- pattern ListPat :: forall dom. PatternList dom -> Pattern dom
- pattern ParArrayPat :: forall dom. PatternList dom -> Pattern dom
- pattern ParenPat :: forall dom. Pattern dom -> Pattern dom
- pattern RecPat :: forall dom. Name dom -> PatternFieldList dom -> Pattern dom
- pattern AsPat :: forall dom. Name dom -> Pattern dom -> Pattern dom
- pattern WildPat :: forall dom. Pattern dom
- pattern IrrefutablePat :: forall dom. Pattern dom -> Pattern dom
- pattern BangPat :: forall dom. Pattern dom -> Pattern dom
- pattern TypeSigPat :: forall dom. Pattern dom -> Type dom -> Pattern dom
- pattern ViewPat :: forall dom. Expr dom -> Pattern dom -> Pattern dom
- pattern SplicePat :: forall dom. Splice dom -> Pattern dom
- pattern QuasiQuotePat :: forall dom. QuasiQuote dom -> Pattern dom
- pattern NPlusKPat :: forall dom. Name dom -> Literal dom -> Pattern dom
- pattern FieldPattern :: forall dom. Name dom -> Pattern dom -> PatternField dom
- pattern FieldPunPattern :: forall dom. Name dom -> PatternField dom
- pattern FieldWildcardPattern :: forall dom. FieldWildcard dom -> PatternField dom
Documentation
pattern InfixAppPat :: forall dom. Pattern dom -> Operator dom -> Pattern dom -> Pattern dom Source #
Infix constructor application pattern ( a :+: b
)
pattern AppPat :: forall dom. Name dom -> PatternList dom -> Pattern dom Source #
Constructor application pattern ( Point x y
)
pattern TuplePat :: forall dom. PatternList dom -> Pattern dom Source #
Tuple pattern ( (x,y)
)
pattern UnboxTuplePat :: forall dom. PatternList dom -> Pattern dom Source #
Unboxed tuple pattern ( (# x, y #)
)
pattern ListPat :: forall dom. PatternList dom -> Pattern dom Source #
List pattern ( [1,2,a,x]
)
pattern ParArrayPat :: forall dom. PatternList dom -> Pattern dom Source #
Parallel array pattern ( [:1,2,a,x:]
)
pattern RecPat :: forall dom. Name dom -> PatternFieldList dom -> Pattern dom Source #
Record pattern ( Point { x = 3, y }
)
pattern AsPat :: forall dom. Name dom -> Pattern dom -> Pattern dom Source #
As-pattern (explicit name binding) ( ls@(hd:_)
)
pattern IrrefutablePat :: forall dom. Pattern dom -> Pattern dom Source #
Irrefutable pattern ( ~(x:_)
)
pattern TypeSigPat :: forall dom. Pattern dom -> Type dom -> Pattern dom Source #
Pattern with explicit type signature ( x :: Int
)
pattern ViewPat :: forall dom. Expr dom -> Pattern dom -> Pattern dom Source #
View pattern ( f -> Just 1
)
pattern SplicePat :: forall dom. Splice dom -> Pattern dom Source #
Splice patterns: $(generateX inp)
pattern QuasiQuotePat :: forall dom. QuasiQuote dom -> Pattern dom Source #
Quasi-quoted patterns: [| 1 + 2 |]
pattern FieldPattern :: forall dom. Name dom -> Pattern dom -> PatternField dom Source #
Named field pattern ( p = Point 3 2
)
pattern FieldPunPattern :: forall dom. Name dom -> PatternField dom Source #
Named field pun ( p
)
pattern FieldWildcardPattern :: forall dom. FieldWildcard dom -> PatternField dom Source #
Wildcard field pattern ( ..
)