uuagc

PrintVisitCode

# Documentation

sem_CInterface :: CInterface -> T_CInterface

newtype T_CInterface

Constructors

T_CInterface () |

data Inh_CInterface

Constructors

Inh_CInterface |

data Syn_CInterface

Constructors

Syn_CInterface |

wrap_CInterface :: T_CInterface -> Inh_CInterface -> Syn_CInterface

sem_CInterface_CInterface :: T_CSegments -> T_CInterface

sem_CNonterminal :: CNonterminal -> T_CNonterminal

newtype T_CNonterminal

Constructors

T_CNonterminal () |

data Inh_CNonterminal

Constructors

Inh_CNonterminal |

data Syn_CNonterminal

Constructors

Syn_CNonterminal |

wrap_CNonterminal :: T_CNonterminal -> Inh_CNonterminal -> Syn_CNonterminal

sem_CNonterminal_CNonterminal :: NontermIdent -> [Identifier] -> Attributes -> Attributes -> T_CProductions -> T_CInterface -> T_CNonterminal

sem_CNonterminals :: CNonterminals -> T_CNonterminals

newtype T_CNonterminals

Constructors

T_CNonterminals () |

data Inh_CNonterminals

Constructors

Inh_CNonterminals |

data Syn_CNonterminals

Constructors

Syn_CNonterminals |

wrap_CNonterminals :: T_CNonterminals -> Inh_CNonterminals -> Syn_CNonterminals

sem_CNonterminals_Cons :: T_CNonterminal -> T_CNonterminals -> T_CNonterminals

sem_CNonterminals_Nil :: T_CNonterminals

sem_CProduction :: CProduction -> T_CProduction

newtype T_CProduction

Constructors

T_CProduction () |

data Inh_CProduction

Constructors

Inh_CProduction |

data Syn_CProduction

Constructors

Syn_CProduction |

wrap_CProduction :: T_CProduction -> Inh_CProduction -> Syn_CProduction

sem_CProduction_CProduction :: ConstructorIdent -> T_CVisits -> [(Identifier, Type, ChildKind)] -> [Identifier] -> T_CProduction

sem_CProductions :: CProductions -> T_CProductions

newtype T_CProductions

Constructors

T_CProductions () |

data Inh_CProductions

Constructors

Inh_CProductions |

data Syn_CProductions

Constructors

Syn_CProductions |

wrap_CProductions :: T_CProductions -> Inh_CProductions -> Syn_CProductions

sem_CProductions_Cons :: T_CProduction -> T_CProductions -> T_CProductions

sem_CProductions_Nil :: T_CProductions

sem_CRule :: CRule -> T_CRule

newtype T_CRule

Constructors

T_CRule () |

data Inh_CRule

Constructors

Inh_CRule |

data Syn_CRule

Constructors

Syn_CRule |

wrap_CRule :: T_CRule -> Inh_CRule -> Syn_CRule

sem_CRule_CChildVisit :: Identifier -> NontermIdent -> Int -> Attributes -> Attributes -> Bool -> T_CRule

sem_CRule_CRule :: Identifier -> Bool -> Bool -> NontermIdent -> ConstructorIdent -> Identifier -> Maybe NontermIdent -> Maybe Type -> T_Pattern -> [String] -> Map Int (Identifier, Identifier, Maybe Type) -> Bool -> String -> Set (Identifier, Identifier) -> Bool -> Maybe Identifier -> T_CRule

sem_CSegment :: CSegment -> T_CSegment

newtype T_CSegment

Constructors

T_CSegment () |

data Inh_CSegment

Constructors

Inh_CSegment |

data Syn_CSegment

Constructors

Syn_CSegment |

wrap_CSegment :: T_CSegment -> Inh_CSegment -> Syn_CSegment

sem_CSegment_CSegment :: Attributes -> Attributes -> T_CSegment

sem_CSegments :: CSegments -> T_CSegments

newtype T_CSegments

Constructors

T_CSegments () |

data Inh_CSegments

Constructors

Inh_CSegments |

data Syn_CSegments

Constructors

Syn_CSegments |

wrap_CSegments :: T_CSegments -> Inh_CSegments -> Syn_CSegments

sem_CSegments_Cons :: T_CSegment -> T_CSegments -> T_CSegments

sem_CSegments_Nil :: T_CSegments

sem_CVisit :: CVisit -> T_CVisit

newtype T_CVisit

Constructors

T_CVisit () |

data Inh_CVisit

Constructors

Inh_CVisit |

data Syn_CVisit

Constructors

Syn_CVisit |

wrap_CVisit :: T_CVisit -> Inh_CVisit -> Syn_CVisit

sem_CVisit_CVisit :: Attributes -> Attributes -> T_Sequence -> T_Sequence -> Bool -> T_CVisit

sem_CVisits :: CVisits -> T_CVisits

newtype T_CVisits

Constructors

T_CVisits () |

data Inh_CVisits

Constructors

Inh_CVisits |

data Syn_CVisits

Constructors

Syn_CVisits |

wrap_CVisits :: T_CVisits -> Inh_CVisits -> Syn_CVisits

sem_CVisits_Cons :: T_CVisit -> T_CVisits -> T_CVisits

sem_CVisits_Nil :: T_CVisits

sem_DeclBlocks :: DeclBlocks -> T_DeclBlocks

newtype T_DeclBlocks

Constructors

T_DeclBlocks () |

data Inh_DeclBlocks

Constructors

Inh_DeclBlocks |

data Syn_DeclBlocks

Constructors

Syn_DeclBlocks |

wrap_DeclBlocks :: T_DeclBlocks -> Inh_DeclBlocks -> Syn_DeclBlocks

sem_DeclBlocks_DeclBlock :: [Decl] -> Decl -> T_DeclBlocks -> T_DeclBlocks

sem_DeclBlocks_DeclTerminator :: [Decl] -> Expr -> T_DeclBlocks

sem_DeclBlocksRoot :: DeclBlocksRoot -> T_DeclBlocksRoot

newtype T_DeclBlocksRoot

Constructors

T_DeclBlocksRoot () |

data Inh_DeclBlocksRoot

Constructors

Inh_DeclBlocksRoot |

data Syn_DeclBlocksRoot

Constructors

Syn_DeclBlocksRoot |

wrap_DeclBlocksRoot :: T_DeclBlocksRoot -> Inh_DeclBlocksRoot -> Syn_DeclBlocksRoot

sem_DeclBlocksRoot_DeclBlocksRoot :: T_DeclBlocks -> T_DeclBlocksRoot

sem_Pattern :: Pattern -> T_Pattern

newtype T_Pattern

Constructors

T_Pattern Pattern |

data Inh_Pattern

Constructors

Inh_Pattern |

data Syn_Pattern

Constructors

Syn_Pattern |
Fields copy_Syn_Pattern :: !Pattern

wrap_Pattern :: T_Pattern -> Inh_Pattern -> Syn_Pattern

sem_Pattern_Alias :: Identifier -> Identifier -> T_Pattern -> T_Pattern

sem_Pattern_Constr :: ConstructorIdent -> T_Patterns -> T_Pattern

sem_Pattern_Irrefutable :: T_Pattern -> T_Pattern

sem_Pattern_Product :: Pos -> T_Patterns -> T_Pattern

sem_Pattern_Underscore :: Pos -> T_Pattern

sem_Patterns :: Patterns -> T_Patterns

newtype T_Patterns

Constructors

T_Patterns Patterns |

data Inh_Patterns

Constructors

Inh_Patterns |

data Syn_Patterns

Constructors

Syn_Patterns |
Fields copy_Syn_Patterns :: !Patterns

wrap_Patterns :: T_Patterns -> Inh_Patterns -> Syn_Patterns

sem_Patterns_Cons :: T_Pattern -> T_Patterns -> T_Patterns

sem_Patterns_Nil :: T_Patterns

sem_Sequence :: Sequence -> T_Sequence

newtype T_Sequence

Constructors

T_Sequence () |

data Inh_Sequence

Constructors

Inh_Sequence |

data Syn_Sequence

Constructors

Syn_Sequence |

wrap_Sequence :: T_Sequence -> Inh_Sequence -> Syn_Sequence

sem_Sequence_Cons :: T_CRule -> T_Sequence -> T_Sequence

sem_Sequence_Nil :: T_Sequence

sem_CGrammar :: CGrammar -> T_CGrammar

newtype T_CGrammar

Constructors

T_CGrammar (Options -> PP_Docs) |

data Inh_CGrammar

Constructors

Inh_CGrammar |
Fields options_Inh_CGrammar :: !Options

data Syn_CGrammar

Constructors

Syn_CGrammar |
Fields output_Syn_CGrammar :: !PP_Docs

wrap_CGrammar :: T_CGrammar -> Inh_CGrammar -> Syn_CGrammar

sem_CGrammar_CGrammar :: TypeSyns -> Derivings -> Set NontermIdent -> T_CNonterminals -> PragmaMap -> ParamMap -> ContextMap -> QuantMap -> Map NontermIdent (Map ConstructorIdent (Set Identifier)) -> Map NontermIdent (Map ConstructorIdent (Map Identifier (Identifier, [Identifier]))) -> Bool -> T_CGrammar

type PP_Docs = [PP_Doc]

ppMultiSeqH :: [PP_Doc] -> PP_Doc -> PP_Doc

ppMultiSeqV :: [PP_Doc] -> PP_Doc -> PP_Doc

ppMultiSeq' :: (PP_Doc -> PP_Doc -> PP_Doc) -> [PP_Doc] -> PP_Doc -> PP_Doc