Safe Haskell | None |
---|---|
Language | Haskell98 |
Synopsis
- parseOffside :: (Symbol s, InputState i s p, Position p) => OffsideParser i Pair s p a -> OffsideInput i s p -> Steps (a, OffsideInput i s p) (OffsideSymbol s) p
- pBlock :: (InputState i s p, OutputState o, Position p, Symbol s, Ord s) => OffsideParser i o s p x -> OffsideParser i o s p y -> OffsideParser i o s p z -> OffsideParser i o s p a -> OffsideParser i o s p [a]
- pBlock1 :: (InputState i s p, OutputState o, Position p, Symbol s, Ord s) => OffsideParser i o s p x -> OffsideParser i o s p y -> OffsideParser i o s p z -> OffsideParser i o s p a -> OffsideParser i o s p [a]
- pOffside :: (InputState i s p, OutputState o, Position p, Symbol s, Ord s) => OffsideParser i o s p x -> OffsideParser i o s p y -> OffsideParser i o s p a -> OffsideParser i o s p a -> OffsideParser i o s p a
- pOpen :: (OutputState o, InputState i s p, Position p, Symbol s, Ord s) => OffsideParser i o s p ()
- pClose :: (OutputState o, InputState i s p, Position p, Symbol s, Ord s) => OffsideParser i o s p ()
- pSeparator :: (OutputState o, InputState i s p, Position p, Symbol s, Ord s) => OffsideParser i o s p ()
- scanOffside :: (InputState i s p, Position p, Eq s) => s -> s -> s -> [s] -> i -> OffsideInput i s p
- scanOffsideWithTriggers :: forall i s p. (InputState i s p, Position p, Eq s) => s -> s -> s -> [(OffsideTrigger, s)] -> i -> OffsideInput i s p
- scanLiftTokensToOffside :: InputState t s p => t -> OffsideInput inp s p -> OffsideInput inp s p
- data OffsideTrigger
- data OffsideSymbol s
- = Symbol s
- | SemiColon
- | CloseBrace
- | OpenBrace
- data OffsideInput inp s p
- data Stream inp s p
- newtype OffsideParser i o s p a = OP (AnaParser (OffsideInput i s p) o (OffsideSymbol s) p a)
Documentation
parseOffside :: (Symbol s, InputState i s p, Position p) => OffsideParser i Pair s p a -> OffsideInput i s p -> Steps (a, OffsideInput i s p) (OffsideSymbol s) p Source #
pBlock :: (InputState i s p, OutputState o, Position p, Symbol s, Ord s) => OffsideParser i o s p x -> OffsideParser i o s p y -> OffsideParser i o s p z -> OffsideParser i o s p a -> OffsideParser i o s p [a] Source #
pBlock1 :: (InputState i s p, OutputState o, Position p, Symbol s, Ord s) => OffsideParser i o s p x -> OffsideParser i o s p y -> OffsideParser i o s p z -> OffsideParser i o s p a -> OffsideParser i o s p [a] Source #
pOffside :: (InputState i s p, OutputState o, Position p, Symbol s, Ord s) => OffsideParser i o s p x -> OffsideParser i o s p y -> OffsideParser i o s p a -> OffsideParser i o s p a -> OffsideParser i o s p a Source #
pOpen :: (OutputState o, InputState i s p, Position p, Symbol s, Ord s) => OffsideParser i o s p () Source #
pClose :: (OutputState o, InputState i s p, Position p, Symbol s, Ord s) => OffsideParser i o s p () Source #
pSeparator :: (OutputState o, InputState i s p, Position p, Symbol s, Ord s) => OffsideParser i o s p () Source #
scanOffside :: (InputState i s p, Position p, Eq s) => s -> s -> s -> [s] -> i -> OffsideInput i s p Source #
convert tokens to offside tokens, dealing with Haskell's layout rule
scanOffsideWithTriggers :: forall i s p. (InputState i s p, Position p, Eq s) => s -> s -> s -> [(OffsideTrigger, s)] -> i -> OffsideInput i s p Source #
scanLiftTokensToOffside :: InputState t s p => t -> OffsideInput inp s p -> OffsideInput inp s p Source #
plainly lift tokens to offside tokens scanLiftTokensToOffside :: (InputState i s p) => [i] -> OffsideInput i s p -> OffsideInput i s p
data OffsideTrigger Source #
Instances
Eq OffsideTrigger Source # | |
Defined in UU.Parsing.Offside (==) :: OffsideTrigger -> OffsideTrigger -> Bool # (/=) :: OffsideTrigger -> OffsideTrigger -> Bool # |
data OffsideSymbol s Source #
Instances
data OffsideInput inp s p Source #
Instances
InputState inp s p => InputState (OffsideInput inp s p) (OffsideSymbol s) p Source # | |
Defined in UU.Parsing.Offside splitStateE :: OffsideInput inp s p -> Either' (OffsideInput inp s p) (OffsideSymbol s) Source # splitState :: OffsideInput inp s p -> (#OffsideSymbol s, OffsideInput inp s p#) Source # getPosition :: OffsideInput inp s p -> p Source # reportError :: Message (OffsideSymbol s) p -> OffsideInput inp s p -> OffsideInput inp s p Source # insertSymbol :: OffsideSymbol s -> OffsideInput inp s p -> OffsideInput inp s p Source # deleteSymbol :: OffsideSymbol s -> OffsideInput inp s p -> OffsideInput inp s p Source # |
newtype OffsideParser i o s p a Source #
OP (AnaParser (OffsideInput i s p) o (OffsideSymbol s) p a) |