From c985dab565416251d9973f5b3bafe4d9d205b249 Mon Sep 17 00:00:00 2001 From: aarne Date: Wed, 1 Oct 2003 12:46:44 +0000 Subject: Putting def definitions in place. --- src/GF/Source/AbsGF.hs | 15 +++++++++++---- 1 file changed, 11 insertions(+), 4 deletions(-) (limited to 'src/GF/Source/AbsGF.hs') diff --git a/src/GF/Source/AbsGF.hs b/src/GF/Source/AbsGF.hs index 16d342dd8..ce307ee17 100644 --- a/src/GF/Source/AbsGF.hs +++ b/src/GF/Source/AbsGF.hs @@ -2,12 +2,10 @@ module AbsGF where import Ident --H --- Haskell module generated by the BNF converter, except for --H +-- Haskell module generated by the BNF converter, except --H -- newtype Ident = Ident String deriving (Eq,Ord,Show) --H - newtype LString = LString String deriving (Eq,Ord,Show) - data Grammar = Gr [ModDef] deriving (Eq,Ord,Show) @@ -66,7 +64,7 @@ data TopDef = DefCat [CatDef] | DefFun [FunDef] | DefDef [Def] - | DefData [ParDef] + | DefData [DataDef] | DefTrans [FlagDef] | DefPar [ParDef] | DefOper [Def] @@ -89,6 +87,15 @@ data FunDef = FunDef [Ident] Exp deriving (Eq,Ord,Show) +data DataDef = + DataDef Ident [DataConstr] + deriving (Eq,Ord,Show) + +data DataConstr = + DataId Ident + | DataQId Ident Ident + deriving (Eq,Ord,Show) + data ParDef = ParDef Ident [ParConstr] | ParDefIndir Ident Ident -- cgit v1.2.3