From 5956ba6b38f56c4aa41f7216f7dabade368bb2f2 Mon Sep 17 00:00:00 2001 From: aarne Date: Sat, 3 Nov 2007 22:00:08 +0000 Subject: command language and gfcc term parser in bnfc --- src/GF/Command/AbsGFShell.hs | 42 ++++++++++++++++++++++++++++++++++++++++++ 1 file changed, 42 insertions(+) create mode 100644 src/GF/Command/AbsGFShell.hs (limited to 'src/GF/Command/AbsGFShell.hs') diff --git a/src/GF/Command/AbsGFShell.hs b/src/GF/Command/AbsGFShell.hs new file mode 100644 index 000000000..c13004cf9 --- /dev/null +++ b/src/GF/Command/AbsGFShell.hs @@ -0,0 +1,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) + -- cgit v1.2.3