Project

General

Profile

Download (864 Bytes) Statistics
| Branch: | Tag: | Revision:
1
open Lustre_types
2

    
3
(* This module is used to load lusic files when open(ing) modules in lustre/lusi
4
   sources *)
5

    
6
(* Load the provided program, either an actual program or a header lusi files: -
7
   reject program that define imported node - reject header that define lustre
8
   node - inject #include lus file into the program - loads #open lusic files -
9
   record the node name and check that they are uniquely defined - build the
10
   type/clock env from the imported nodes
11

    
12
   Returns an extended prog along with dependencies of #open and a type/clock
13
   base env. *)
14
val load :
15
  is_header:bool ->
16
  program_t ->
17
  program_t * dep_t list * (Typing.type_expr Env.t * Clocks.clock_expr Env.t)
18

    
19
(* Returns an updated env with the type/clock declaration of the program *)
20
val get_envs_from_top_decls :
21
  program_t -> Typing.type_expr Env.t * Clocks.clock_expr Env.t
(41-41/66)