parsley-0.1.1.0: A fast parser combinator library backed by Typed Template Haskell
Safe HaskellNone
LanguageHaskell2010

Parsley.Internal.Backend.Machine.InputOps

Documentation

class InputPrep input where Source #

Methods

prepare :: rep ~ Rep input => Code input -> Code (InputDependant rep) Source #

Instances

Instances details
InputPrep ByteString Source # 
Instance details

Defined in Parsley.Internal.Backend.Machine.InputOps

Methods

prepare :: forall (rep :: TYPE (RepKind ByteString)). rep ~ Rep ByteString => Code ByteString -> Code (InputDependant rep) Source #

InputPrep ByteString Source # 
Instance details

Defined in Parsley.Internal.Backend.Machine.InputOps

Methods

prepare :: forall (rep :: TYPE (RepKind ByteString)). rep ~ Rep ByteString => Code ByteString -> Code (InputDependant rep) Source #

InputPrep Text Source # 
Instance details

Defined in Parsley.Internal.Backend.Machine.InputOps

Methods

prepare :: forall (rep :: TYPE (RepKind Text)). rep ~ Rep Text => Code Text -> Code (InputDependant rep) Source #

InputPrep Stream Source # 
Instance details

Defined in Parsley.Internal.Backend.Machine.InputOps

Methods

prepare :: forall (rep :: TYPE (RepKind Stream)). rep ~ Rep Stream => Code Stream -> Code (InputDependant rep) Source #

InputPrep CharList Source # 
Instance details

Defined in Parsley.Internal.Backend.Machine.InputOps

Methods

prepare :: forall (rep :: TYPE (RepKind CharList)). rep ~ Rep CharList => Code CharList -> Code (InputDependant rep) Source #

InputPrep Text16 Source # 
Instance details

Defined in Parsley.Internal.Backend.Machine.InputOps

Methods

prepare :: forall (rep :: TYPE (RepKind Text16)). rep ~ Rep Text16 => Code Text16 -> Code (InputDependant rep) Source #

InputPrep [Char] Source # 
Instance details

Defined in Parsley.Internal.Backend.Machine.InputOps

Methods

prepare :: forall (rep :: TYPE (RepKind [Char])). rep ~ Rep [Char] => Code [Char] -> Code (InputDependant rep) Source #

InputPrep (UArray Int Char) Source # 
Instance details

Defined in Parsley.Internal.Backend.Machine.InputOps

Methods

prepare :: forall (rep :: TYPE (RepKind (UArray Int Char))). rep ~ Rep (UArray Int Char) => Code (UArray Int Char) -> Code (InputDependant rep) Source #

class PositionOps input where Source #

Methods

same :: rep ~ Rep input => Proxy input -> Code rep -> Code rep -> Code Bool Source #

shiftRight :: rep ~ Rep input => Proxy input -> Code rep -> Code Int# -> Code rep Source #

Instances

Instances details
PositionOps ByteString Source # 
Instance details

Defined in Parsley.Internal.Backend.Machine.InputOps

Methods

same :: forall (rep :: TYPE (RepKind ByteString)). rep ~ Rep ByteString => Proxy ByteString -> Code rep -> Code rep -> Code Bool Source #

shiftRight :: forall (rep :: TYPE (RepKind ByteString)). rep ~ Rep ByteString => Proxy ByteString -> Code rep -> Code Int# -> Code rep Source #

PositionOps ByteString Source # 
Instance details

Defined in Parsley.Internal.Backend.Machine.InputOps

Methods

same :: forall (rep :: TYPE (RepKind ByteString)). rep ~ Rep ByteString => Proxy ByteString -> Code rep -> Code rep -> Code Bool Source #

shiftRight :: forall (rep :: TYPE (RepKind ByteString)). rep ~ Rep ByteString => Proxy ByteString -> Code rep -> Code Int# -> Code rep Source #

PositionOps Text Source # 
Instance details

Defined in Parsley.Internal.Backend.Machine.InputOps

Methods

same :: forall (rep :: TYPE (RepKind Text)). rep ~ Rep Text => Proxy Text -> Code rep -> Code rep -> Code Bool Source #

shiftRight :: forall (rep :: TYPE (RepKind Text)). rep ~ Rep Text => Proxy Text -> Code rep -> Code Int# -> Code rep Source #

PositionOps Stream Source # 
Instance details

Defined in Parsley.Internal.Backend.Machine.InputOps

Methods

same :: forall (rep :: TYPE (RepKind Stream)). rep ~ Rep Stream => Proxy Stream -> Code rep -> Code rep -> Code Bool Source #

shiftRight :: forall (rep :: TYPE (RepKind Stream)). rep ~ Rep Stream => Proxy Stream -> Code rep -> Code Int# -> Code rep Source #

PositionOps CharList Source # 
Instance details

Defined in Parsley.Internal.Backend.Machine.InputOps

Methods

same :: forall (rep :: TYPE (RepKind CharList)). rep ~ Rep CharList => Proxy CharList -> Code rep -> Code rep -> Code Bool Source #

shiftRight :: forall (rep :: TYPE (RepKind CharList)). rep ~ Rep CharList => Proxy CharList -> Code rep -> Code Int# -> Code rep Source #

PositionOps Text16 Source # 
Instance details

Defined in Parsley.Internal.Backend.Machine.InputOps

Methods

same :: forall (rep :: TYPE (RepKind Text16)). rep ~ Rep Text16 => Proxy Text16 -> Code rep -> Code rep -> Code Bool Source #

shiftRight :: forall (rep :: TYPE (RepKind Text16)). rep ~ Rep Text16 => Proxy Text16 -> Code rep -> Code Int# -> Code rep Source #

PositionOps [Char] Source # 
Instance details

Defined in Parsley.Internal.Backend.Machine.InputOps

Methods

same :: forall (rep :: TYPE (RepKind [Char])). rep ~ Rep [Char] => Proxy [Char] -> Code rep -> Code rep -> Code Bool Source #

shiftRight :: forall (rep :: TYPE (RepKind [Char])). rep ~ Rep [Char] => Proxy [Char] -> Code rep -> Code Int# -> Code rep Source #

PositionOps (UArray Int Char) Source # 
Instance details

Defined in Parsley.Internal.Backend.Machine.InputOps

Methods

same :: forall (rep :: TYPE (RepKind (UArray Int Char))). rep ~ Rep (UArray Int Char) => Proxy (UArray Int Char) -> Code rep -> Code rep -> Code Bool Source #

shiftRight :: forall (rep :: TYPE (RepKind (UArray Int Char))). rep ~ Rep (UArray Int Char) => Proxy (UArray Int Char) -> Code rep -> Code Int# -> Code rep Source #

data InputOps (rep :: TYPE r) Source #

Constructors

InputOps 

Fields

more :: forall r (rep :: TYPE r). (?ops :: InputOps rep) => Code (rep -> Bool) Source #

next :: forall r (rep :: TYPE r) a. (?ops :: InputOps rep) => Code rep -> (Code Char -> Code rep -> Code a) -> Code a Source #

type InputDependant (rep :: TYPE r) = (# rep -> (# Char, rep #), rep -> Bool, rep #) Source #