Safe Haskell | None |
---|---|
Language | Haskell2010 |
Symantic.Parser.Machine.View
Contents
Synopsis
- newtype ViewMachine (showName :: Bool) inp (vs :: [Type]) (es :: Peano) a = ViewMachine {
- unViewMachine :: Forest String -> Forest String
- viewMachine :: ViewMachine sN inp vs es a -> ViewMachine sN inp vs es a
- viewInstrCmd :: String -> Forest String -> Tree String
- viewInstrArg :: String -> Forest String -> Tree String
Type ViewMachine
newtype ViewMachine (showName :: Bool) inp (vs :: [Type]) (es :: Peano) a Source #
Constructors
ViewMachine | |
Fields
|
Instances
Readable tok (ViewMachine sN) Source # | |
Defined in Symantic.Parser.Machine.View Methods read :: forall inp (vs :: [Type]) (es :: Peano) a. tok ~ InputToken inp => [ErrorItem tok] -> TermInstr (tok -> Bool) -> ViewMachine sN inp (tok ': vs) ('Succ es) a -> ViewMachine sN inp vs ('Succ es) a Source # | |
ShowLetName sN Name => Joinable (ViewMachine sN) Source # | |
Defined in Symantic.Parser.Machine.View Methods defJoin :: forall v inp (vs :: [Type]) (es :: Peano) a. LetName v -> ViewMachine sN inp (v ': vs) es a -> ViewMachine sN inp vs es a -> ViewMachine sN inp vs es a Source # refJoin :: forall v inp (vs :: [Type]) (es :: Peano) a. LetName v -> ViewMachine sN inp (v ': vs) es a Source # | |
Inputable (ViewMachine sN) Source # | |
Defined in Symantic.Parser.Machine.View Methods loadInput :: forall inp (vs :: [Type]) (es :: Peano) a. ViewMachine sN inp vs es a -> ViewMachine sN inp (Cursor inp ': vs) es a Source # pushInput :: forall inp (vs :: [Type]) (es :: Peano) a. ViewMachine sN inp (Cursor inp ': vs) es a -> ViewMachine sN inp vs es a Source # | |
Failable (ViewMachine sN) Source # | |
Defined in Symantic.Parser.Machine.View Methods fail :: forall inp (vs :: [Type]) (es :: Peano) a. [ErrorItem (InputToken inp)] -> ViewMachine sN inp vs ('Succ es) a Source # popFail :: forall inp (vs :: [Type]) (es :: Peano) a. ViewMachine sN inp vs es a -> ViewMachine sN inp vs ('Succ es) a Source # catchFail :: forall inp (vs :: [Type]) (es :: Peano) a. ViewMachine sN inp vs ('Succ es) a -> ViewMachine sN inp (Cursor inp ': vs) es a -> ViewMachine sN inp vs es a Source # | |
Branchable (ViewMachine sN) Source # | |
Defined in Symantic.Parser.Machine.View Methods caseI :: forall inp x (vs :: [Type]) (es :: Peano) r y. ViewMachine sN inp (x ': vs) es r -> ViewMachine sN inp (y ': vs) es r -> ViewMachine sN inp (Either x y ': vs) es r Source # choices :: forall v inp (vs :: [Type]) (es :: Peano) a. [TermInstr (v -> Bool)] -> [ViewMachine sN inp vs es a] -> ViewMachine sN inp vs es a -> ViewMachine sN inp (v ': vs) es a Source # ifI :: forall inp (vs :: [Type]) (es :: Peano) a. ViewMachine sN inp vs es a -> ViewMachine sN inp vs es a -> ViewMachine sN inp (Bool ': vs) es a Source # | |
ShowLetName sN Name => Routinable (ViewMachine sN) Source # | |
Defined in Symantic.Parser.Machine.View Methods subroutine :: forall v inp (vs :: [Type]) (es :: Peano) a. LetName v -> ViewMachine sN inp '[] ('Succ 'Zero) v -> ViewMachine sN inp vs ('Succ es) a -> ViewMachine sN inp vs ('Succ es) a Source # call :: forall v inp (vs :: [Type]) (es :: Peano) a. LetName v -> ViewMachine sN inp (v ': vs) ('Succ es) a -> ViewMachine sN inp vs ('Succ es) a Source # ret :: forall inp a (es :: Peano). ViewMachine sN inp '[a] es a Source # jump :: forall a inp (es :: Peano). LetName a -> ViewMachine sN inp '[] ('Succ es) a Source # | |
Stackable (ViewMachine sN) Source # | |
Defined in Symantic.Parser.Machine.View Methods push :: forall v inp (vs :: [Type]) (es :: Peano) a. TermInstr v -> ViewMachine sN inp (v ': vs) es a -> ViewMachine sN inp vs es a Source # pop :: forall inp (vs :: [Type]) (es :: Peano) a v. ViewMachine sN inp vs es a -> ViewMachine sN inp (v ': vs) es a Source # liftI2 :: forall x y z inp (vs :: [Type]) (es :: Peano) a. TermInstr (x -> y -> z) -> ViewMachine sN inp (z ': vs) es a -> ViewMachine sN inp (y ': (x ': vs)) es a Source # swap :: forall inp x y (vs :: [Type]) (es :: Peano) a. ViewMachine sN inp (x ': (y ': vs)) es a -> ViewMachine sN inp (y ': (x ': vs)) es a Source # mapI :: forall x y inp (vs :: [Type]) (es :: Peano) a. TermInstr (x -> y) -> ViewMachine sN inp (y ': vs) es a -> ViewMachine sN inp (x ': vs) es a Source # appI :: forall inp y (vs :: [Type]) (es :: Peano) a x. ViewMachine sN inp (y ': vs) es a -> ViewMachine sN inp (x ': ((x -> y) ': vs)) es a Source # | |
Show (ViewMachine sN inp vs es a) Source # | |
Defined in Symantic.Parser.Machine.View Methods showsPrec :: Int -> ViewMachine sN inp vs es a -> ShowS # show :: ViewMachine sN inp vs es a -> String # showList :: [ViewMachine sN inp vs es a] -> ShowS # | |
IsString (ViewMachine sN inp vs es a) Source # | |
Defined in Symantic.Parser.Machine.View Methods fromString :: String -> ViewMachine sN inp vs es a # |
viewMachine :: ViewMachine sN inp vs es a -> ViewMachine sN inp vs es a Source #