Diagnostics rendering
The type for Lines will very likely change over time, so we can draw lit up control characters for ^Z, ^[, 0xff, etc. this will make for much nicer diagnostics when working with protocols!
- data Rendering = Rendering {
- renderingDelta :: !Delta
- renderingLineLen :: !Int
- renderingLine :: Lines -> Lines
- renderingOverlays :: Delta -> Lines -> Lines
- nullRendering :: Rendering -> Bool
- emptyRendering :: Rendering
- class Source t where
- rendering :: Source s => Delta -> s -> Rendering
- class Renderable t where
- data Rendered a = a :@ Rendering
- type Lines = Array (Int, Int) ([ScopedEffect], Char)
- draw :: [ScopedEffect] -> Int -> Int -> String -> Lines -> Lines
- ifNear :: Delta -> (Lines -> Lines) -> Delta -> Lines -> Lines
- (.#) :: (Delta -> Lines -> Lines) -> Rendering -> Rendering
Documentation
Rendering | |
|
nullRendering :: Rendering -> BoolSource
class Renderable t whereSource