| Safe Haskell | Safe-Inferred |
|---|
Text.Chatty.Scanner.Buffered
Description
Provides a typeclass for buffered scanners as well as a buffering monad transformer.
- class ChScanner m => ChBufferedScanner m where
- class ChBufferedScanner m => ChStackBufferedScanner m where
- newtype ScannerBufferT m a = ScannerBuffer {
- runScannerBufferT :: [String] -> m (a, [String])
Documentation
class ChScanner m => ChBufferedScanner m whereSource
Typeclass for all buffered ChScanners.
Methods
Scan the next character without removing it.
mprepend :: String -> m ()Source
Prepend the given character to the scannable input.
Instances
| ChBufferedScanner m0 => ChBufferedScanner (HandleCloserT m0) | |
| Monad m => ChBufferedScanner (HereStringT m) | |
| ChScanner m => ChBufferedScanner (ScannerBufferT m) | |
| ChBufferedScanner m0 => ChBufferedScanner (RecorderT m0) | |
| ChBufferedScanner m0 => ChBufferedScanner (OutRedirT m0) | |
| ChBufferedScanner m0 => ChBufferedScanner (DeafT m0) | |
| ChBufferedScanner m0 => ChBufferedScanner (SpawnOverlayT m0) | |
| ChBufferedScanner m0 => ChBufferedScanner (NullExpanderT m0) | |
| ChBufferedScanner m0 => ChBufferedScanner (ExpanderT m0) | |
| ChBufferedScanner m0 => ChBufferedScanner (HistoryT m0) | |
| ChBufferedScanner m0 => ChBufferedScanner (HtmlPrinterT m0) | |
| ChBufferedScanner m0 => ChBufferedScanner (AnsiPrinterT m0) | |
| Monad m => ChBufferedScanner (StateT String m) |
class ChBufferedScanner m => ChStackBufferedScanner m whereSource
Typeclass for all BufferedScanners with support for pushing and popping.
Methods
Push the current input state to the stack.
Pop the previous input state from the stack.
Instances
newtype ScannerBufferT m a Source
Constructors
| ScannerBuffer | |
Fields
| |
Instances
| MonadTrans ScannerBufferT | |
| ChChannelPrinter Bool m0 => ChChannelPrinter Bool (ScannerBufferT m0) | |
| ChChannelPrinter Int m0 => ChChannelPrinter Int (ScannerBufferT m0) | |
| ChChannelPrinter Handle m0 => ChChannelPrinter Handle (ScannerBufferT m0) | |
| Monad m => Monad (ScannerBufferT m) | |
| Monad m => Functor (ScannerBufferT m) | |
| MonadIO m => MonadIO (ScannerBufferT m) | |
| ChRandom m0 => ChRandom (ScannerBufferT m0) | |
| ChClock m0 => ChClock (ScannerBufferT m0) | |
| ChFinalizer m0 => ChFinalizer (ScannerBufferT m0) | |
| ChScanner m => ChScanner (ScannerBufferT m) | |
| ChScanner m => ChStackBufferedScanner (ScannerBufferT m) | |
| ChScanner m => ChBufferedScanner (ScannerBufferT m) | |
| ChPrinter m0 => ChPrinter (ScannerBufferT m0) | |
| ChSpawn m0 => ChSpawn (ScannerBufferT m0) | |
| ChExtendedPrinter m0 => ChExtendedPrinter (ScannerBufferT m0) | |
| ChExpand m0 => ChExpand (ScannerBufferT m0) | |
| ChExpanderEnv m0 => ChExpanderEnv (ScannerBufferT m0) | |
| ChHistoryEnv m0 => ChHistoryEnv (ScannerBufferT m0) |