Idris2Doc : TyRE.Parser.SM

TyRE.Parser.SM

(source)

Definitions

dataInstruction : SnocListType->SnocListType->Type
Totality: total
Visibility: public export
Constructors:
Push : x->Instructiontps (tps:<x)
  Pushes chosen symbol on the stack
PushChar : Instructiontps (tps:<Char)
  Pushes currently consumed character on the stack
ReducePair : (x->y->z) ->Instruction ((tps:<x) :<y) (tps:<z)
  Reduces two last symbols from the stack accoring to the given funciton
Transform : (x->y) ->Instruction (tps:<x) (tps:<y)
  Maps the top element of stack
EmitString : Instructiontps (tps:<String)
  Pushes collected string on the stack
Record : Instructiontpstps
  Raises record flag and starts collecting characters
liftInst : Instructiontpstps'->Instruction (pcds++tps) (pcds++tps')
Totality: total
Visibility: public export
dataRoutineSnoc : SnocListType->SnocListType->Type
Totality: total
Visibility: public export
Constructors:
Lin : RoutineSnoctpstps
  Identity
(:<) : RoutineSnoctpstps'->Instructiontps'tps''->RoutineSnoctpstps''
  Sequences routines
dataRoutine : SnocListType->SnocListType->Type
Totality: total
Visibility: public export
Constructors:
Nil : Routinetpstps
  Identity
(::) : Instructiontpstps'->Routinetps'tps''->Routinetpstps''
  Sequences routines
(++) : RoutineSnoctpstps'->RoutineSnoctps'tps''->RoutineSnoctpstps''
Totality: total
Visibility: public export
Fixity Declaration: infixr operator, level 7
lift : RoutineSnoctpstps'->RoutineSnoc (pcds++tps) (pcds++tps')
Totality: total
Visibility: public export
dataEitherErased : Type->Type->Type
  Like Data.Either, but argument to `Right` variant is erased

Totality: total
Visibility: public export
Constructors:
Left : a->EitherErasedab
Right : (0_ : b) ->EitherErasedab
dataIsInitInstruction : Instructiontt'->Type
Totality: total
Visibility: public export
Constructors:
InitRecord : IsInitInstructionRecord
InitPush : IsInitInstruction (Pushelem)
InitReducePair : IsInitInstruction (ReducePairf)
InitTransform : IsInitInstruction (Transformf)
InitEmitString : IsInitInstructionEmitString
dataIsInitRoutine : Routinett'->Type
Totality: total
Visibility: public export
Constructors:
Nil : IsInitRoutine []
(::) : IsInitInstructionx->IsInitRoutinexs->IsInitRoutine (x::xs)
head : IsInitRoutine (x::xs) ->IsInitInstructionx
Totality: total
Visibility: public export
tail : IsInitRoutine (x::xs) ->IsInitRoutinexs
Totality: total
Visibility: public export
dataIsInitRoutineSnoc : RoutineSnoctt'->Type
Totality: total
Visibility: public export
Constructors:
Lin : IsInitRoutineSnoc [<]
(:<) : IsInitRoutineSnocxs->IsInitInstructionx->IsInitRoutineSnoc (xs:<x)
(++) : IsInitRoutineSnocxs->IsInitRoutineSnocxs'->IsInitRoutineSnoc (xs++xs')
Totality: total
Visibility: public export
Fixity Declaration: infixr operator, level 7
reverse : IsInitRoutineSnocsx->IsInitRoutine (reversesx)
Totality: total
Visibility: export
lift : IsInitRoutineSnocxs->IsInitRoutineSnoc (liftxs)
Totality: total
Visibility: public export
mlookup : (s->SnocListType) ->Type->Maybes->SnocListType
Totality: total
Visibility: public export
InitStatesType : Type-> (state : Type) -> (state->SnocListType) ->Type
Totality: total
Visibility: public export
TransitionRelation : Type-> (state : Type) -> (state->SnocListType) ->Type
Totality: total
Visibility: public export
recordSM : Type->Type
Totality: total
Visibility: public export
Constructor: 
MkSM : (0s : Type) -> (0lookup : (s->SnocListType)) ->Eqs=>InitStatesTypetslookup->TransitionRelationtslookup->SMt

Projections:
.init : ({rec:0} : SMt) ->InitStatesTypet (s{rec:0}) (lookup{rec:0})
.isEq : ({rec:0} : SMt) ->Eq (s{rec:0})
0.lookup : ({rec:0} : SMt) ->s{rec:0}->SnocListType
.next : ({rec:0} : SMt) ->TransitionRelationt (s{rec:0}) (lookup{rec:0})
0.s : SMt->Type
0.s : SMt->Type
Totality: total
Visibility: public export
0s : SMt->Type
Totality: total
Visibility: public export
0.lookup : ({rec:0} : SMt) ->s{rec:0}->SnocListType
Totality: total
Visibility: public export
0lookup : ({rec:0} : SMt) ->s{rec:0}->SnocListType
Totality: total
Visibility: public export
.isEq : ({rec:0} : SMt) ->Eq (s{rec:0})
Totality: total
Visibility: public export
isEq : ({rec:0} : SMt) ->Eq (s{rec:0})
Totality: total
Visibility: public export
.init : ({rec:0} : SMt) ->InitStatesTypet (s{rec:0}) (lookup{rec:0})
Totality: total
Visibility: public export
init : ({rec:0} : SMt) ->InitStatesTypet (s{rec:0}) (lookup{rec:0})
Totality: total
Visibility: public export
.next : ({rec:0} : SMt) ->TransitionRelationt (s{rec:0}) (lookup{rec:0})
Totality: total
Visibility: public export
next : ({rec:0} : SMt) ->TransitionRelationt (s{rec:0}) (lookup{rec:0})
Totality: total
Visibility: public export
dataStack : SnocListType->Type
Totality: total
Visibility: public export
Constructors:
Lin : Stack [<]
(:<) : Stacktps->t->Stack (tps:<t)
runTillStrEnd : {autosm : SMt} ->ListChar->List (Threadsm) ->Maybet
  Run the state machine matching the whole string

Totality: total
Visibility: export
runTillFirstAccept : {autosm : SMt} ->ListChar->List (Threadsm) -> (Maybet, ListChar)
  Run the state machine looking for a first matching prefix (non-greedy)

Totality: total
Visibility: export
runTillLastAccept : {autosm : SMt} ->ListChar->Maybe (t, ListChar) ->List (Threadsm) -> (Maybet, ListChar)
  Run the state machine looking for the last matching prefix (greedy)

Totality: total
Visibility: export
runTillFirstAccept : {autosm : SMt} ->StreamChar->List (Threadsm) -> (Maybet, StreamChar)
  Run the state machine looking for a first matching prefix (non-greedy)
re return also the leftover stream

Visibility: export
runTillLastAccept : {autosm : SMt} ->StreamChar->Maybe (t, StreamChar) ->List (Threadsm) -> (Maybet, StreamChar)
  Run the state machine looking for the last matching prefix (greedy)

Visibility: export
runFromInit : {autosm : SMt} -> (List (Threadsm) ->a) ->a
Totality: total
Visibility: export