package p4spectec

  1. Overview
  2. Docs
Legend:
Page
Library
Module
Module type
Parameter
Class
Class type
Source

Module Backend_sim.StateSource

module Value = Runtime.Value
module IO = Runtime.Sim.Io
Sourcetype s = Value.t * Value.t * IO.tx list
Sourcetype 'a state = s -> 'a option * s
Sourceval get : s state
Sourceval put : s -> unit state
Sourceval modify : (s -> s) -> unit state
Sourceval return : 'a -> 'a state
Sourceval bind : 'a state -> ('a -> 'b state) -> s -> 'b option * s
Sourceval (>>) : 'a state -> 'b state -> s -> 'b option * s
Sourceval (let*) : 'a state -> ('a -> 'b state) -> s -> 'b option * s
Sourceval map : 'a state -> ('a -> 'b) -> s -> 'b option * s
Sourceval (let+) : 'a state -> ('a -> 'b) -> s -> 'b option * s
Sourceval sequence : 'a state list -> 'a list state
Sourceval on_result : 'a state -> some:('a -> 'b state) -> none:(unit -> 'b state) -> 'b state
Sourceval apply : (Value.t -> Value.t -> Value.t * Value.t * 'a) -> 'a state
Sourceval guard : bool -> unit state
Sourceval empty : 'a state
Sourceval run : 'a state -> s -> 'a option * s