Safe Haskell | None |
---|---|
Language | Haskell2010 |
Documentation
class (PositionOps o, LogOps (Rep o)) => LogHandler o where Source #
logHandler :: (?ops :: InputOps (Rep o)) => String -> Ctx s o a -> Γ s o xs (Succ n) ks a -> Code (Rep o) -> Code (Handler s o a) Source #
Instances
LogHandler ByteString Source # | |
Defined in Parsley.Internal.Backend.Machine.Ops logHandler :: forall s a (xs :: [Type]) (n :: Nat) ks. (?ops :: InputOps (Rep ByteString)) => String -> Ctx s ByteString a -> Γ s ByteString xs ('Succ n) ks a -> Code (Rep ByteString) -> Code (Handler s ByteString a) Source # | |
LogHandler ByteString Source # | |
Defined in Parsley.Internal.Backend.Machine.Ops logHandler :: forall s a (xs :: [Type]) (n :: Nat) ks. (?ops :: InputOps (Rep ByteString)) => String -> Ctx s ByteString a -> Γ s ByteString xs ('Succ n) ks a -> Code (Rep ByteString) -> Code (Handler s ByteString a) Source # | |
LogHandler Text Source # | |
LogHandler Stream Source # | |
LogHandler CharList Source # | |
LogHandler Text16 Source # | |
LogHandler [Char] Source # | |
LogHandler (UArray Int Char) Source # | |
Defined in Parsley.Internal.Backend.Machine.Ops |
class RecBuilder o where Source #
buildIter :: ReturnOps o => Ctx s o a -> MVar Void -> Machine s o '[] One Void a -> (Code (Rep o) -> Code (Handler s o a)) -> Code (Rep o) -> Code (ST s (Maybe a)) Source #
buildRec :: Regs rs -> Ctx s o a -> Machine s o '[] One r a -> Code (Func rs s o a r) Source #
Instances
class JoinBuilder o where Source #
setupJoinPoint :: ΦVar x -> Machine s o (x ': xs) n r a -> Machine s o xs n r a -> MachineMonad s o xs n r a Source #
Instances
JoinBuilder ByteString Source # | |
Defined in Parsley.Internal.Backend.Machine.Ops setupJoinPoint :: forall x s (xs :: [Type]) (n :: Nat) r a. ΦVar x -> Machine s ByteString (x ': xs) n r a -> Machine s ByteString xs n r a -> MachineMonad s ByteString xs n r a Source # | |
JoinBuilder ByteString Source # | |
Defined in Parsley.Internal.Backend.Machine.Ops setupJoinPoint :: forall x s (xs :: [Type]) (n :: Nat) r a. ΦVar x -> Machine s ByteString (x ': xs) n r a -> Machine s ByteString xs n r a -> MachineMonad s ByteString xs n r a Source # | |
JoinBuilder Text Source # | |
Defined in Parsley.Internal.Backend.Machine.Ops | |
JoinBuilder Stream Source # | |
Defined in Parsley.Internal.Backend.Machine.Ops | |
JoinBuilder CharList Source # | |
Defined in Parsley.Internal.Backend.Machine.Ops | |
JoinBuilder Text16 Source # | |
Defined in Parsley.Internal.Backend.Machine.Ops | |
JoinBuilder [Char] Source # | |
Defined in Parsley.Internal.Backend.Machine.Ops | |
JoinBuilder (UArray Int Char) Source # | |
class ReturnOps o where Source #
Instances
class ContOps o where Source #
suspend :: (Γ s o (x ': xs) n r a -> Code (ST s (Maybe a))) -> Γ s o xs n r a -> Code (Cont s o a x) Source #
Instances
ContOps ByteString Source # | |
Defined in Parsley.Internal.Backend.Machine.Ops suspend :: forall s x (xs :: [Type]) (n :: Nat) r a. (Γ s ByteString (x ': xs) n r a -> Code (ST s (Maybe a))) -> Γ s ByteString xs n r a -> Code (Cont s ByteString a x) Source # | |
ContOps ByteString Source # | |
Defined in Parsley.Internal.Backend.Machine.Ops suspend :: forall s x (xs :: [Type]) (n :: Nat) r a. (Γ s ByteString (x ': xs) n r a -> Code (ST s (Maybe a))) -> Γ s ByteString xs n r a -> Code (Cont s ByteString a x) Source # | |
ContOps Text Source # | |
ContOps Stream Source # | |
ContOps CharList Source # | |
ContOps Text16 Source # | |
ContOps [Char] Source # | |
ContOps (UArray Int Char) Source # | |
class HandlerOps o where Source #
buildHandler :: Γ s o xs n r a -> (Γ s o (o ': xs) n r a -> Code (ST s (Maybe a))) -> Code (Rep o) -> Code (Handler s o a) Source #
Instances
HandlerOps ByteString Source # | |
Defined in Parsley.Internal.Backend.Machine.Ops buildHandler :: forall s (xs :: [Type]) (n :: Nat) r a. Γ s ByteString xs n r a -> (Γ s ByteString (ByteString ': xs) n r a -> Code (ST s (Maybe a))) -> Code (Rep ByteString) -> Code (Handler s ByteString a) Source # | |
HandlerOps ByteString Source # | |
Defined in Parsley.Internal.Backend.Machine.Ops buildHandler :: forall s (xs :: [Type]) (n :: Nat) r a. Γ s ByteString xs n r a -> (Γ s ByteString (ByteString ': xs) n r a -> Code (ST s (Maybe a))) -> Code (Rep ByteString) -> Code (Handler s ByteString a) Source # | |
HandlerOps Text Source # | |
HandlerOps Stream Source # | |
HandlerOps CharList Source # | |
HandlerOps Text16 Source # | |
HandlerOps [Char] Source # | |
HandlerOps (UArray Int Char) Source # | |
type Ops o = (LogHandler o, ContOps o, HandlerOps o, JoinBuilder o, RecBuilder o, ReturnOps o, PositionOps o, LogOps (Rep o)) Source #
sat :: (?ops :: InputOps (Rep o)) => (Code Char -> Code Bool) -> (Γ s o (Char ': xs) n r a -> Code (ST s (Maybe a))) -> Code (ST s (Maybe a)) -> Γ s o xs n r a -> Code (ST s (Maybe a)) Source #
emitLengthCheck :: forall s o xs n r a. (?ops :: InputOps (Rep o), PositionOps o) => Int -> (Γ s o xs n r a -> Code (ST s (Maybe a))) -> Code (ST s (Maybe a)) -> Γ s o xs n r a -> Code (ST s (Maybe a)) Source #
newΣ :: ΣVar x -> Access -> Defunc x -> (Ctx s o a -> Code (ST s (Maybe a))) -> Ctx s o a -> Code (ST s (Maybe a)) Source #
writeΣ :: ΣVar x -> Access -> Defunc x -> (Ctx s o a -> Code (ST s (Maybe a))) -> Ctx s o a -> Code (ST s (Maybe a)) Source #
readΣ :: ΣVar x -> Access -> (Defunc x -> Ctx s o a -> Code (ST s (Maybe a))) -> Ctx s o a -> Code (ST s (Maybe a)) Source #
setupHandler :: Γ s o xs n r a -> (Code (Rep o) -> Code (Handler s o a)) -> (Γ s o xs (Succ n) r a -> Code (ST s (Maybe a))) -> Code (ST s (Maybe a)) Source #
callWithContinuation :: forall o s a x n. Code (SubRoutine s o a x) -> Code (Cont s o a x) -> Code (Rep o) -> Vec (Succ n) (Code (Handler s o a)) -> Code (ST s (Maybe a)) Source #
takeFreeRegisters :: Regs rs -> Ctx s o a -> (Ctx s o a -> Code (SubRoutine s o a x)) -> Code (Func rs s o a x) Source #