Portability | to be determined. |
---|---|
Stability | highly unstable |
Maintainer | Stephen Tetley <stephen.tetley@gmail.com> |
Random access parse monad
- data GenKangaroo ust a
- type ParseErr = String
- getSt :: GenKangaroo ust St
- putSt :: St -> GenKangaroo ust ()
- modifySt :: (St -> St) -> GenKangaroo ust ()
- getUserSt :: GenKangaroo ust ust
- putUserSt :: ust -> GenKangaroo ust ()
- modifyUserSt :: (ust -> ust) -> GenKangaroo ust ()
- askEnv :: GenKangaroo ust Env
- throwErr :: String -> GenKangaroo ust a
- runGenKangaroo :: GenKangaroo ust a -> ust -> FilePath -> IO (Either ParseErr a, ust)
- reportError :: ParseErr -> GenKangaroo ust a
- substError :: GenKangaroo ust a -> ParseErr -> GenKangaroo ust a
- word8 :: GenKangaroo ust Word8
- checkWord8 :: (Word8 -> Bool) -> GenKangaroo ust (Maybe Word8)
- opt :: GenKangaroo ust a -> GenKangaroo ust (Maybe a)
- position :: GenKangaroo ust Int
- regionEnd :: GenKangaroo ust Int
- atEnd :: GenKangaroo ust Bool
- lengthRemaining :: GenKangaroo ust Int
- dalpunto :: Int -> Int -> GenKangaroo ust a -> GenKangaroo ust a
- dalpuntoRelative :: Int -> Int -> GenKangaroo ust a -> GenKangaroo ust a
- advanceDalpunto :: Int -> GenKangaroo ust p -> GenKangaroo ust p
- advanceDalpuntoAbsolute :: Int -> GenKangaroo ust p -> GenKangaroo ust p
- alfine :: Int -> Int -> GenKangaroo ust a -> GenKangaroo ust a
- alfineRelative :: Int -> Int -> GenKangaroo ust a -> GenKangaroo ust a
- restrictAlfine :: Int -> GenKangaroo ust p -> GenKangaroo ust p
- alfermata :: Int -> Int -> GenKangaroo ust a -> GenKangaroo ust a
- alfermataRelative :: Int -> Int -> GenKangaroo ust a -> GenKangaroo ust a
- advanceAlfermata :: Int -> GenKangaroo ust p -> GenKangaroo ust p
- advanceAlfermataAbsolute :: Int -> GenKangaroo ust p -> GenKangaroo ust p
- restrictAlfermata :: Int -> GenKangaroo ust p -> GenKangaroo ust p
Documentation
data GenKangaroo ust a Source
Monad (GenKangaroo ust) | |
Functor (GenKangaroo ust) | |
Applicative (GenKangaroo ust) |
getSt :: GenKangaroo ust StSource
putSt :: St -> GenKangaroo ust ()Source
modifySt :: (St -> St) -> GenKangaroo ust ()Source
getUserSt :: GenKangaroo ust ustSource
putUserSt :: ust -> GenKangaroo ust ()Source
modifyUserSt :: (ust -> ust) -> GenKangaroo ust ()Source
askEnv :: GenKangaroo ust EnvSource
throwErr :: String -> GenKangaroo ust aSource
runGenKangaroo :: GenKangaroo ust a -> ust -> FilePath -> IO (Either ParseErr a, ust)Source
reportError :: ParseErr -> GenKangaroo ust aSource
substError :: GenKangaroo ust a -> ParseErr -> GenKangaroo ust aSource
word8 :: GenKangaroo ust Word8Source
checkWord8 :: (Word8 -> Bool) -> GenKangaroo ust (Maybe Word8)Source
opt :: GenKangaroo ust a -> GenKangaroo ust (Maybe a)Source
position :: GenKangaroo ust IntSource
regionEnd :: GenKangaroo ust IntSource
atEnd :: GenKangaroo ust BoolSource
lengthRemaining :: GenKangaroo ust IntSource
Parse within a region.
dalpunto :: Int -> Int -> GenKangaroo ust a -> GenKangaroo ust aSource
return to the start position - start x length
dalpuntoRelative :: Int -> Int -> GenKangaroo ust a -> GenKangaroo ust aSource
return to the start position - displacement x length
advanceDalpunto :: Int -> GenKangaroo ust p -> GenKangaroo ust pSource
Advance the current position by the supplied distance.
advanceDalpuntoAbsolute :: Int -> GenKangaroo ust p -> GenKangaroo ust pSource
Advance the current position to the supplied (absolute) position.
alfine :: Int -> Int -> GenKangaroo ust a -> GenKangaroo ust aSource
alfine - parse to the end
alfineRelative :: Int -> Int -> GenKangaroo ust a -> GenKangaroo ust aSource
finish at the right of the region - displacement x length
restrictAlfine :: Int -> GenKangaroo ust p -> GenKangaroo ust pSource
alfermata :: Int -> Int -> GenKangaroo ust a -> GenKangaroo ust aSource
alfermata - parse to the sign i.e. wherever the supplied parser stops within the supplied region. At the end of the parse restore the outer region.
alfermataRelative :: Int -> Int -> GenKangaroo ust a -> GenKangaroo ust aSource
advanceAlfermata :: Int -> GenKangaroo ust p -> GenKangaroo ust pSource
Advance the current position by the supplied distance.
advanceAlfermataAbsolute :: Int -> GenKangaroo ust p -> GenKangaroo ust pSource
Advance the current position to the supplied (absolute) position.
restrictAlfermata :: Int -> GenKangaroo ust p -> GenKangaroo ust pSource