mirror of
https://github.com/GrammaticalFramework/gf-core.git
synced 2026-05-15 06:02:55 -06:00
Added CFGM format (pm -printer=cfgm) and utf8 conversion for pm.
This commit is contained in:
50
src/GF/CFGM/AbsCFG.hs
Normal file
50
src/GF/CFGM/AbsCFG.hs
Normal file
@@ -0,0 +1,50 @@
|
||||
module AbsCFG where
|
||||
|
||||
-- Haskell module generated by the BNF converter
|
||||
|
||||
newtype Ident = Ident 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 Ident Name Profile Category [Symbol]
|
||||
deriving (Eq,Ord,Show)
|
||||
|
||||
data Profile =
|
||||
Profile [Ints]
|
||||
deriving (Eq,Ord,Show)
|
||||
|
||||
data Ints =
|
||||
Ints [Integer]
|
||||
deriving (Eq,Ord,Show)
|
||||
|
||||
data Symbol =
|
||||
CatS Category
|
||||
| TermS String
|
||||
deriving (Eq,Ord,Show)
|
||||
|
||||
data Name =
|
||||
Name [IdentParam] Category
|
||||
deriving (Eq,Ord,Show)
|
||||
|
||||
data Category =
|
||||
Category IdentParam Ident [Param]
|
||||
deriving (Eq,Ord,Show)
|
||||
|
||||
data IdentParam =
|
||||
IdentParam Ident [Param]
|
||||
deriving (Eq,Ord,Show)
|
||||
|
||||
data Param =
|
||||
Param Ident
|
||||
deriving (Eq,Ord,Show)
|
||||
|
||||
Reference in New Issue
Block a user