uuagc

ConcreteSyntax

# Documentation

data AG

Constructors

AG Elems |

data Alt

Constructors

Alt Pos ConstructorSet [Identifier] Fields MaybeMacro |

type Alts = [Alt]

data Attrs

Constructors

Attrs Pos AttrNames AttrNames AttrNames |

data ConstructorSet

Constructors

CAll |
CDifference ConstructorSet ConstructorSet |
CName ConstructorIdent |
CUnion ConstructorSet ConstructorSet |

data Elem

Constructors

Attr Pos ClassContext NontSet [String] Attrs |
Data Pos ClassContext NontSet [Identifier] Attrs Alts Bool |
Deriving Pos NontSet [NontermIdent] |
Module Pos String String String |
Nocatas Pos NontSet |
Pragma Pos [NontermIdent] |
Sem Pos ClassContext NontSet Attrs [String] SemAlts |
Set Pos NontermIdent Bool NontSet |
Txt Pos BlockKind (Maybe NontermIdent) [String] |
Type Pos ClassContext NontermIdent [Identifier] ComplexType |
Wrapper Pos NontSet |

type Elems = [Elem]

data Field

Constructors

FChild Identifier Type |
FCtx [Type] |

type Fields = [Field]

data NontSet

Constructors

All |
Difference NontSet NontSet |
Intersect NontSet NontSet |
NamedSet NontermIdent |
Path NontermIdent NontermIdent |
Union NontSet NontSet |

data SemAlt

Constructors

SemAlt Pos ConstructorSet SemDefs |

type SemAlts = [SemAlt]

data SemDef

Constructors

AroundDef Identifier Expression |
AttrOrderBefore [Occurrence] [Occurrence] |
AugmentDef Identifier Expression |
Def Pos (Maybe Identifier) Pattern Expression Bool Bool Bool |
MergeDef Identifier Identifier [Identifier] Expression |
SemPragma [NontermIdent] |
TypeDef Pos Identifier Type |
UniqueDef Identifier Identifier |

type SemDefs = [SemDef]