summaryrefslogtreecommitdiff
path: root/src-3.0/GF/CFGM/AbsCFG.hs
diff options
context:
space:
mode:
Diffstat (limited to 'src-3.0/GF/CFGM/AbsCFG.hs')
-rw-r--r--src-3.0/GF/CFGM/AbsCFG.hs45
1 files changed, 45 insertions, 0 deletions
diff --git a/src-3.0/GF/CFGM/AbsCFG.hs b/src-3.0/GF/CFGM/AbsCFG.hs
new file mode 100644
index 000000000..063b96802
--- /dev/null
+++ b/src-3.0/GF/CFGM/AbsCFG.hs
@@ -0,0 +1,45 @@
+module GF.CFGM.AbsCFG where
+
+-- Haskell module generated by the BNF converter
+
+newtype Ident = Ident String deriving (Eq,Ord,Show)
+newtype SingleQuoteString = SingleQuoteString String deriving (Eq,Ord,Show)
+data Grammars =
+ Grammars [Grammar]
+ deriving (Eq,Ord,Show)
+
+data Grammar =
+ Grammar Ident [Flag] [Rule]
+ deriving (Eq,Ord,Show)
+
+data Flag =
+ StartCat Category
+ deriving (Eq,Ord,Show)
+
+data Rule =
+ Rule Fun Profiles Category [Symbol]
+ deriving (Eq,Ord,Show)
+
+data Fun =
+ Cons Ident
+ | Coerce
+ deriving (Eq,Ord,Show)
+
+data Profiles =
+ Profiles [Profile]
+ deriving (Eq,Ord,Show)
+
+data Profile =
+ UnifyProfile [Integer]
+ | ConstProfile Ident
+ deriving (Eq,Ord,Show)
+
+data Symbol =
+ CatS Category
+ | TermS String
+ deriving (Eq,Ord,Show)
+
+data Category =
+ Category SingleQuoteString
+ deriving (Eq,Ord,Show)
+