package rfsm

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

Module Typing.MakeSource

Parameters

module HS : Syntax.SYNTAX
module GT : Guest.TYPING with module Syntax = HS.Guest and type Types.typ = HS.typ
module GS : Guest.STATIC with type expr = HS.expr

Signature

Sourcemodule HostSyntax = HS
Sourcemodule GuestTyping = GT
Sourcemodule A = Annot
Sourcetype typed_program = {
  1. tp_models : HostSyntax.model list;
  2. tp_insts : (Ident.t * HostSyntax.model) list;
}
Sourceexception Duplicate_symbol of Location.t * Ident.t
Sourceexception Invalid_state of Location.t * Ident.t
Sourceexception Duplicate_state of Location.t * Ident.t
Sourceexception No_event_input of Location.t
Sourceexception Illegal_inst of Location.t
Sourceexception Illegal_state_output of Location.t * Ident.t * Ident.t
Sourceexception Type_mismatch of Location.t * string * HostSyntax.typ
Sourceval mk_env : unit -> GuestTyping.env
Sourceval type_fsm_action : GuestTyping.env -> 'a -> (HostSyntax.action_desc, GuestTyping.Types.typ) A.t -> unit
Sourceval check_type : loc:Location.t -> what:string -> (HostSyntax.typ -> bool) -> HostSyntax.typ -> unit
Sourceval type_fsm_event : loc:Location.t -> GuestTyping.env -> Ident.t -> unit
Sourceval check_fsm_state : loc:Location.t -> (HostSyntax.model_desc, 'a) A.t -> Ident.t -> unit
Sourceval type_fsm_itransition : GuestTyping.env -> (HostSyntax.model_desc, 'a) A.t -> (Ident.t * (HostSyntax.action_desc, GuestTyping.Types.typ) A.t list, 'b) A.t -> unit
Sourceval type_fsm_ios : 'a -> (HostSyntax.model_desc, 'b) A.t -> unit
Sourceval pp_env : Format.formatter -> GuestTyping.env -> unit
OCaml

Innovation. Community. Security.