Safe Haskell | Safe-Infered |
---|
DefaultRules
Documentation
sem_Children :: Children -> T_Children
newtype T_Children
Constructors
T_Children (ConstructorIdent -> Bool -> Map Identifier Attributes -> Set Identifier -> NontermIdent -> [Identifier] -> Map Identifier Attributes -> (Seq Error, [(Identifier, Type, ChildKind)], [(Identifier, Attributes)], Children, [(Identifier, Attributes)])) |
data Inh_Children
Constructors
Inh_Children | |
Fields |
data Syn_Children
Constructors
Syn_Children | |
Fields
|
wrap_Children :: T_Children -> Inh_Children -> Syn_Children
sem_Children_Cons :: T_Child -> T_Children -> T_Children
sem_Grammar :: Grammar -> T_Grammar
data Inh_Grammar
Constructors
Inh_Grammar | |
Fields |
data Syn_Grammar
Constructors
Syn_Grammar | |
Fields
|
wrap_Grammar :: T_Grammar -> Inh_Grammar -> Syn_Grammar
sem_Grammar_Grammar :: TypeSyns -> UseMap -> Derivings -> Set NontermIdent -> T_Nonterminals -> PragmaMap -> AttrOrderMap -> ParamMap -> ContextMap -> QuantMap -> UniqueMap -> Map NontermIdent (Map ConstructorIdent (Map Identifier [Expression])) -> Map NontermIdent (Map ConstructorIdent (Map Identifier [Expression])) -> Map NontermIdent (Map ConstructorIdent (Map Identifier (Identifier, [Identifier], Expression))) -> T_Grammar
newtype T_Nonterminal
Constructors
T_Nonterminal (Set NontermIdent, Map Identifier Attributes, Map Identifier Attributes, T_Nonterminal_1) |
newtype T_Nonterminal_1
Constructors
T_Nonterminal_1 (Map NontermIdent (Map ConstructorIdent (Map Identifier [Expression])) -> Map NontermIdent (Map ConstructorIdent (Map Identifier [Expression])) -> Bool -> Map Identifier Attributes -> AttrOrderMap -> Map NontermIdent (Map ConstructorIdent (Map Identifier (Identifier, [Identifier], Expression))) -> Set NontermIdent -> Bool -> Options -> Map Identifier Attributes -> TypeSyns -> Int -> UseMap -> Set NontermIdent -> (Seq Error, Nonterminal, Int)) |
data Inh_Nonterminal
Constructors
data Syn_Nonterminal
Constructors
Syn_Nonterminal | |
Fields |
sem_Nonterminal_Nonterminal :: NontermIdent -> [Identifier] -> Attributes -> Attributes -> T_Productions -> T_Nonterminal
newtype T_Nonterminals
Constructors
T_Nonterminals (Set NontermIdent, Map Identifier Attributes, Map Identifier Attributes, T_Nonterminals_1) |
newtype T_Nonterminals_1
Constructors
T_Nonterminals_1 (Map NontermIdent (Map ConstructorIdent (Map Identifier [Expression])) -> Map NontermIdent (Map ConstructorIdent (Map Identifier [Expression])) -> Bool -> Map Identifier Attributes -> AttrOrderMap -> Map NontermIdent (Map ConstructorIdent (Map Identifier (Identifier, [Identifier], Expression))) -> Set NontermIdent -> Bool -> Options -> Map Identifier Attributes -> TypeSyns -> Int -> UseMap -> Set NontermIdent -> (Seq Error, Nonterminals, Int)) |
data Inh_Nonterminals
Constructors
data Syn_Nonterminals
Constructors
Syn_Nonterminals | |
sem_Pattern :: Pattern -> T_Pattern
newtype T_Pattern
Constructors
T_Pattern (ConstructorIdent -> NontermIdent -> (Bool, Pattern, Set (Identifier, Identifier), Seq Error, Set Identifier, Pattern)) |
data Inh_Pattern
Constructors
Inh_Pattern | |
Fields |
data Syn_Pattern
Constructors
Syn_Pattern | |
Fields
|
wrap_Pattern :: T_Pattern -> Inh_Pattern -> Syn_Pattern
sem_Pattern_Alias :: Identifier -> Identifier -> T_Pattern -> T_Pattern
sem_Pattern_Product :: Pos -> T_Patterns -> T_Pattern
sem_Patterns :: Patterns -> T_Patterns
newtype T_Patterns
Constructors
T_Patterns (ConstructorIdent -> NontermIdent -> (Bool, Patterns, Set (Identifier, Identifier), Seq Error, Set Identifier, Patterns)) |
data Inh_Patterns
Constructors
Inh_Patterns | |
Fields |
data Syn_Patterns
Constructors
Syn_Patterns | |
Fields
|
wrap_Patterns :: T_Patterns -> Inh_Patterns -> Syn_Patterns
sem_Patterns_Cons :: T_Pattern -> T_Patterns -> T_Patterns
newtype T_Production
Constructors
T_Production (Map ConstructorIdent (Map Identifier [Expression]) -> Map ConstructorIdent (Map Identifier [Expression]) -> Bool -> Attributes -> Map Identifier Attributes -> Attributes -> AttrOrderMap -> Map ConstructorIdent (Map Identifier (Identifier, [Identifier], Expression)) -> Set NontermIdent -> NontermIdent -> Bool -> Options -> [Identifier] -> Attributes -> Map Identifier Attributes -> Attributes -> TypeSyns -> Int -> Map Identifier (String, String, String) -> Set NontermIdent -> (Seq Error, Production, Int)) |
data Inh_Production
Constructors
data Syn_Production
Constructors
Syn_Production | |
Fields |
sem_Production_Production :: ConstructorIdent -> [Identifier] -> [Type] -> T_Children -> T_Rules -> T_TypeSigs -> MaybeMacro -> T_Production
newtype T_Productions
Constructors
T_Productions (Map ConstructorIdent (Map Identifier [Expression]) -> Map ConstructorIdent (Map Identifier [Expression]) -> Bool -> Attributes -> Map Identifier Attributes -> Attributes -> AttrOrderMap -> Map ConstructorIdent (Map Identifier (Identifier, [Identifier], Expression)) -> Set NontermIdent -> NontermIdent -> Bool -> Options -> [Identifier] -> Attributes -> Map Identifier Attributes -> Attributes -> TypeSyns -> Int -> Map Identifier (String, String, String) -> Set NontermIdent -> (Seq Error, Productions, Int)) |
data Inh_Productions
Constructors
data Syn_Productions
Constructors
Syn_Productions | |
Fields |
newtype T_Rule
Constructors
T_Rule (ConstructorIdent -> NontermIdent -> Options -> Int -> (Bool, Set (Identifier, Identifier), Seq Error, Bool, Set Identifier, Rule, Rules, Set Identifier, Int)) |
data Inh_Rule
Constructors
Inh_Rule | |
Fields
|
data Syn_Rule
Constructors
Syn_Rule | |
Fields
|
sem_Rule_Rule :: Maybe Identifier -> T_Pattern -> Expression -> Bool -> String -> Bool -> Bool -> Bool -> Maybe Error -> Bool -> T_Rule
newtype T_Rules
Constructors
T_Rules (ConstructorIdent -> NontermIdent -> Options -> Int -> (Set (Identifier, Identifier), Seq Error, Set Identifier, Rules, Set Identifier, Int)) |
data Syn_Rules
Constructors
Syn_Rules | |
Fields
|
wrap_Rules :: T_Rules -> Inh_Rules -> Syn_Rules
sem_Rules_Cons :: T_Rule -> T_Rules -> T_Rules
sem_TypeSig :: TypeSig -> T_TypeSig
newtype T_TypeSig
Constructors
T_TypeSig (NontermIdent -> [Identifier] -> TypeSig) |
data Inh_TypeSig
Constructors
Inh_TypeSig | |
Fields |
data Syn_TypeSig
Constructors
Syn_TypeSig | |
Fields |
wrap_TypeSig :: T_TypeSig -> Inh_TypeSig -> Syn_TypeSig
sem_TypeSig_TypeSig :: Identifier -> Type -> T_TypeSig
sem_TypeSigs :: TypeSigs -> T_TypeSigs
newtype T_TypeSigs
Constructors
T_TypeSigs (NontermIdent -> [Identifier] -> TypeSigs) |
data Inh_TypeSigs
Constructors
Inh_TypeSigs | |
Fields |
data Syn_TypeSigs
Constructors
Syn_TypeSigs | |
Fields |
wrap_TypeSigs :: T_TypeSigs -> Inh_TypeSigs -> Syn_TypeSigs
sem_TypeSigs_Cons :: T_TypeSig -> T_TypeSigs -> T_TypeSigs
newtype T_Child
Constructors
T_Child (ConstructorIdent -> Bool -> Map Identifier Attributes -> Set Identifier -> NontermIdent -> [Identifier] -> Map Identifier Attributes -> (Seq Error, (Identifier, Type, ChildKind), Attributes, Identifier, Child, Attributes)) |
data Inh_Child
Constructors
Inh_Child | |
Fields
|
data Syn_Child
Constructors
Syn_Child | |
Fields
|
wrap_Child :: T_Child -> Inh_Child -> Syn_Child
sem_Child_Child :: Identifier -> Type -> ChildKind -> T_Child
fieldName :: Identifier -> [Char]
locName :: Identifier -> [Char]
attrName :: Identifier -> Identifier -> [Char]
getConName :: [(Identifier, ComplexType)] -> Bool -> Identifier -> Identifier -> [Char]
splitAttrs :: Map Identifier a -> [Identifier] -> ([(Identifier, a)], [Identifier])
removeDefined :: Set (Identifier, Identifier) -> (Identifier, Attributes) -> (Identifier, [Identifier])
deprecatedCopyRuleError :: Identifier -> Identifier -> Identifier -> Identifier -> Error
makeRule :: (Identifier, Identifier) -> Expression -> String -> Bool -> Maybe Error -> Rule
useRule :: Set Identifier -> [(Identifier, Attributes)] -> (Identifier, (String, String, String)) -> Rule
selfRule :: Bool -> Identifier -> [HsToken] -> Rule
copyRule :: Options -> Set NontermIdent -> Identifier -> Identifier -> Bool -> Set Identifier -> (Map Identifier Identifier, (Identifier, [Identifier])) -> ([Rule], Seq Error)
addAugments :: (Identifier, [Expression]) -> [Rule] -> [Rule]
addArounds :: (Identifier, [Expression]) -> [Rule] -> [Rule]
addMerges :: (Identifier, (Identifier, [Identifier], Expression)) -> [Rule] -> [Rule]
elimSelfId :: NontermIdent -> [Identifier] -> Type -> Type
elimSelfStr :: NontermIdent -> [String] -> Type -> Type
mkRuleAlias :: Rule -> (Rule, Maybe Rule)
needsMultiRules :: Options -> Bool