package lutin

  1. Overview
  2. Docs

COMPILATION/GENERATION D'AUTOMATE : interface ------------------------------------------------------------

La génération d'automate intervient après l'expansion, qui a produit les infos suivantes :

_support_tab : (CoIdent.t, support_info) Hashtbl.t _alias_tab : (CoIdent.t, alias_info) Hashtbl.t _trace_tab : (CoIdent.t, trace_info) Hashtbl.t _main_trace : CoIdent.t

Les exceptions ont été expansées en place, par des identificateurs uniques dans le expressions associées. Il n'y a donc pas de table pour elles.

WARNING: 2011/01/05 Split between (full) construction (AutoGen) and on the fly exploration (AutoExplore)

----------------------------------------------------------

type weightexp =
  1. | W_huge
  2. | W_exp of CoAlgExp.t

le type du résultat

type gtree = string * gtree_node
and gtree_node =
  1. | GT_leaf of Guard.t * string
  2. | GT_choice of (weightexp option * gtree) list
  3. | GT_stop of string
val gtree_size : gtree -> int
type trans = {
  1. src : string;
  2. wgt : weightexp option;
  3. form : Guard.t;
  4. dest : string;
}
type state_info =
  1. | SS_stable of Expand.tbl CoTraceExp.t
  2. | SS_transient
  3. | SS_final of string
type t
type config
val make_config : string -> config
val source : t -> Expand.t
val init_control : t -> string
val transitions : t -> trans list
val config2gtree : t -> config -> gtree * t
val config2trans : t -> config -> trans list * t
val init : Expand.t -> t
val make : Expand.t -> t
val get_state_def : t -> string -> Expand.tbl CoTraceExp.t
val get_state_info : t -> string -> state_info
val states : t -> state_info Util.StringMap.t
val dump : t -> unit