Safe Haskell | None |
---|
- data UPDomain phi ix where
- data UPBaseIx ix
- data UPHeadIx ix
- data UPTailIx ix
- data family UPValue r ix
- unUPBV :: UPValue r (UPBaseIx ix) -> r ix
- unUPHV :: UPValue r (UPHeadIx ix) -> r ix
- unUPTV :: UPValue r (UPTailIx ix) -> r ix -> r ix
- transformUniformPaull :: forall phi t r. Domain phi => ProcessingContextFreeGrammar phi t r -> ProcessingExtendedContextFreeGrammar (UPDomain phi) t (UPValue r)
- transformUniformPaullP :: forall phi t r. Domain phi => ProcessingPenaltyContextFreeGrammar phi t r -> ProcessingPenaltyExtendedContextFreeGrammar (UPDomain phi) t (UPValue r)
- transformUniformPaullE :: forall phi t r. Domain phi => ProcessingExtendedContextFreeGrammar phi t r -> ProcessingExtendedContextFreeGrammar (UPDomain phi) t (UPValue r)
- transformUniformPaullLE :: forall phi t r. Domain phi => ProcessingLExtendedContextFreeGrammar phi t r -> ProcessingLExtendedContextFreeGrammar (UPDomain phi) t (UPValue r)
Documentation
data UPDomain phi ix whereSource
UPBase :: phi ix -> UPDomain phi (UPBaseIx ix) | |
UPHead :: phi ix -> UPDomain phi (UPHeadIx ix) | |
UPTail :: phi ix -> UPDomain phi (UPTailIx ix) |
LiftFam phi => LiftFam (UPDomain phi) | |
(FoldFam (UPDomain phi), ShowFam (UPDomain phi), EqFam (UPDomain phi), MemoFam (UPDomain phi), Domain phi) => Domain (UPDomain phi) | |
EqFam phi => EqFam (UPDomain phi) | |
ShowFam phi => ShowFam (UPDomain phi) | |
FoldFam phi => FoldFam (UPDomain phi) | |
MemoFam phi => MemoFam (UPDomain phi) | |
DomainMap (UPDomain phi) phi UPTailIx | |
DomainMap (UPDomain phi) phi UPHeadIx | |
DomainMap (UPDomain phi) phi UPBaseIx | |
PenaltyProductionRule p => PenaltyProductionRule (TransformUPWrapper p surrIx (UPDomain phi) (UPValue r) phi ixT r t) | |
(LiftableProductionRule (TransformUPWrapper p surrIx (UPDomain phi) (UPValue r) phi ixT r t), EpsProductionRule p) => EpsProductionRule (TransformUPWrapper p surrIx (UPDomain phi) (UPValue r) phi ixT r t) | |
(ProductionRule (TransformUPWrapper p surrIx (UPDomain phi) (UPValue r) phi ixT r t), LiftableProductionRule p) => LiftableProductionRule (TransformUPWrapper p surrIx (UPDomain phi) (UPValue r) phi ixT r t) | |
(ProductionRule p, LiftableProductionRule p) => ProductionRule (TransformUPWrapper p surrIx (UPDomain phi) (UPValue r) phi ixT r t) | |
(TokenProductionRule p t, ProductionRule p) => TokenProductionRule (TransformUPWrapper p surrIx (UPDomain phi) (UPValue r) phi ixT r t) t | |
(ProductionRule (TransformUPWrapper p surrIx (UPDomain phi) (UPValue r) phi ixT r t), LiftableProductionRule (TransformUPWrapper p surrIx (UPDomain phi) (UPValue r) phi ixT r t), RecProductionRule (TransformUPWrapper p surrIx (UPDomain phi) (UPValue r) phi ixT r t) phi r, EqFam phi, LiftableProductionRule p, LoopProductionRule p (UPDomain phi) (UPValue r)) => LoopProductionRule (TransformUPWrapper p surrIx (UPDomain phi) (UPValue r) phi ixT r t) phi r | |
(RecProductionRule p (UPDomain phi) (UPValue r), LiftableProductionRule p, EqFam phi, LoopProductionRule p (UPDomain phi) (UPValue r)) => RecProductionRule (TransformUPWrapper p surrIx (UPDomain phi) (UPValue r) phi ixT r t) phi r |
transformUniformPaull :: forall phi t r. Domain phi => ProcessingContextFreeGrammar phi t r -> ProcessingExtendedContextFreeGrammar (UPDomain phi) t (UPValue r)Source
Apply a uniform variant of the classic Paull transformation to a given grammar, removing direct and indirect left recursion.
transformUniformPaullP :: forall phi t r. Domain phi => ProcessingPenaltyContextFreeGrammar phi t r -> ProcessingPenaltyExtendedContextFreeGrammar (UPDomain phi) t (UPValue r)Source
transformUniformPaullE :: forall phi t r. Domain phi => ProcessingExtendedContextFreeGrammar phi t r -> ProcessingExtendedContextFreeGrammar (UPDomain phi) t (UPValue r)Source
Apply a uniform variant of the classic Paull transformation to a given extended grammar, removing direct and indirect left recursion.
transformUniformPaullLE :: forall phi t r. Domain phi => ProcessingLExtendedContextFreeGrammar phi t r -> ProcessingLExtendedContextFreeGrammar (UPDomain phi) t (UPValue r)Source
Apply a uniform variant of the classic Paull transformation to a given extended liftable grammar, removing direct and indirect left recursion.