File: Patterns.ag

package info (click to toggle)
uuagc 0.9.56-1
  • links: PTS, VCS
  • area: main
  • in suites: forky, sid, trixie
  • size: 5,764 kB
  • sloc: haskell: 84,340; makefile: 11
file content (25 lines) | stat: -rw-r--r-- 676 bytes parent folder | download | duplicates (5)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
imports
{
-- Patterns.ag imports
import UU.Scanner.Position(Pos)
import CommonTypes (ConstructorIdent,Identifier)
}

TYPE Patterns   = [Pattern]

DATA Pattern    | Constr      name  : {ConstructorIdent}
                              pats  : Patterns
                | Product     pos   : {Pos}
                              pats  : Patterns
                | Alias       field : {Identifier}
                              attr  : {Identifier}
                              pat   : Pattern
                | Irrefutable pat   : Pattern
                | Underscore  pos   : {Pos}

DERIVING Pattern:Show

ATTR AllPattern [ | | copy : SELF ]

SET AllPattern
  = Pattern Patterns