uuagc-0.9.51: src-ag/LOAG/Rep.ag
MODULE {LOAG.Rep}
{}{
import CommonTypes
import AbstractSyntax
import LOAG.Common
import qualified Data.Array as A
import qualified Data.Map as Map
import qualified Data.Set as Set
}
imports{
import Data.List (intercalate, foldl', nub)
import Data.Tuple (swap)
import Control.Arrow
}
DATA LOAGRep | LOAGRep
ps : {[PLabel]}
ap : A_P
an : A_N
ain : AI_N
asn : AS_N
sfp : SF_P
pmp : PMP
pmpr : PMP_R
nmp : NMP
nmpr : NMP_R
gen : {A.Array Int Int}
inss : {A.Array Int [Int]}
ofld : {A.Array Int Int}
fty : FTY
fieldMap : FMap
fsInP: {Map.Map PLabel [(PLabel,FLabel)]}
TYPE FieldAtts = [FieldAtt]
-- t is the type of the attribute this occurrence belongs to
DATA FieldAtt | FieldAtt t : {MyType} p : {PLabel}
f : {FLabel} a : {ALabel}
TYPE MySegments = [MySegment]
DATA MySegment | MySegment
visnr : Int
inhAttr : {[Int]}
synAttr : {[Int]}
inhOccs : {Maybe [Int]}
synOccs : {Maybe [Int]}
DERIVING MySegments MySegment : Show