| License | BSD-3-Clause |
|---|---|
| Maintainer | Jamie Willis |
| Stability | unstable |
| Safe Haskell | None |
| Language | Haskell2010 |
Parsley.Internal.Backend.Machine
Description
Since: 0.1.0.0
Synopsis
- class (InputPrep input, Ops input) => Input input
- eval :: forall input a. (Input input, Trace) => Code input -> (LetBinding input a a, DMap MVar (LetBinding input a)) -> Code (Maybe a)
- module Parsley.Internal.Backend.Machine.Instructions
- user :: Defunc a -> Defunc a
- userBool :: Defunc (a -> Bool) -> Defunc (a -> Bool)
- module Parsley.Internal.Backend.Machine.Identifiers
- data LetBinding o a x
- makeLetBinding :: Binding o a x -> Set SomeΣVar -> LetBinding o a x
Documentation
class (InputPrep input, Ops input) => Input input Source #
This class is exposed to parsley itself and is used to denote which types may be used as input for a parser.
Since: 0.1.0.0
Instances
| Input ByteString Source # | |
Defined in Parsley.Internal.Backend.Machine | |
| Input ByteString Source # | |
Defined in Parsley.Internal.Backend.Machine | |
| Input Text Source # | |
Defined in Parsley.Internal.Backend.Machine | |
| Input Stream Source # | |
Defined in Parsley.Internal.Backend.Machine | |
| Input CharList Source # | |
Defined in Parsley.Internal.Backend.Machine | |
| Input Text16 Source # | |
Defined in Parsley.Internal.Backend.Machine | |
| Input [Char] Source # | |
Defined in Parsley.Internal.Backend.Machine | |
| Input (UArray Int Char) Source # | |
Defined in Parsley.Internal.Backend.Machine | |
eval :: forall input a. (Input input, Trace) => Code input -> (LetBinding input a a, DMap MVar (LetBinding input a)) -> Code (Maybe a) Source #
This function is exposed to parsley itself and is used to generate the Haskell code for a parser.
Since: 0.1.0.0
user :: Defunc a -> Defunc a Source #
Promotes a Defunc value from the Frontend API into a Backend one.
Since: 1.1.0.0
userBool :: Defunc (a -> Bool) -> Defunc (a -> Bool) Source #
Promotes a Defunc value from the Frontend API into a Backend one,
for values representing a -> Bool.
Since: 1.3.0.0
data LetBinding o a x Source #
Packages a binding along with its free registers that are required
for it, which are left existential. This is possible since the Regs
datatype serves as a singleton-style witness of the original registers
and their types.
Since: 1.4.0.0
makeLetBinding :: Binding o a x -> Set SomeΣVar -> LetBinding o a x Source #
Given a Binding and a set of existential ΣVars, produces a
LetBinding instance.
Since: 1.4.0.0