Safe Haskell | None |
---|---|
Language | Haskell2010 |
Documentation
class Monad m => Scanner posMark elem m | m -> posMark, m -> elem where Source #
consumeInput :: m (Maybe elem) Source #
getPosMark :: m posMark Source #
seekToPosMark :: posMark -> m () Source #
Instances
Scanner [e] e (ListScanner e) Source # | |
Defined in Language.Parser.Ptera.Scanner consumeInput :: ListScanner e (Maybe e) Source # getPosMark :: ListScanner e [e] Source # seekToPosMark :: [e] -> ListScanner e () Source # scanMode :: ScanMode [e] -> ListScanner e () Source # |
data ScanMode posMark Source #
ScanModeNoBack | |
ScanModeNeedBack posMark |
newtype ListScanner e a Source #
ListScanner | |
|
Instances
runListScanner :: ListScanner e a -> [e] -> a Source #