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
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
|
module GF.Command.AbsGFShell where
-- Haskell module generated by the BNF converter
newtype Ident = Ident String deriving (Eq,Ord,Show)
data CommandLine =
CLine [Pipe]
| CEmpty
deriving (Eq,Ord,Show)
data Pipe =
PComm [Command]
deriving (Eq,Ord,Show)
data Command =
Comm Ident [Option] Argument
| CNoarg Ident [Option]
deriving (Eq,Ord,Show)
data Option =
OOpt Ident
| OFlag Ident Value
deriving (Eq,Ord,Show)
data Value =
VId Ident
| VInt Integer
deriving (Eq,Ord,Show)
data Argument =
ATree Tree
deriving (Eq,Ord,Show)
data Tree =
TApp Ident [Tree]
| TAbs [Ident] Tree
| TId Ident
| TInt Integer
| TStr String
| TFloat Double
deriving (Eq,Ord,Show)
|