Project

General

Profile

Revision 2b476ad8

View differences:

src/plugins.ml
1
open LustreSpec
2

  
3
module type PluginType =
4
sig
5

  
6
end
7

  
8

  
9

  
10
let inline_annots rename_var_fun annot_list =
11
  List.map (
12
    fun ann -> 
13
      { ann with 
14
	annots = List.fold_left (
15
	  fun accu (sl, eexpr) -> 
16
	    let items = 
17
	      match sl with 
18
	      | plugin_name::args -> 
19
		if plugin_name = "salsa" then
20
		  match args with
21
		  | ["ranges";varname] -> 
22
		    [["salsa";"ranges";(rename_var_fun varname)], eexpr]
23
		  | _ -> [(sl, eexpr)]
24
		else
25
		  [(sl, eexpr)]
26
	    | _ -> assert false
27
	    in
28
	    items@accu
29
	) [] ann.annots
30
      }
31
  ) annot_list
32

  
33
(* Local Variables: *)
34
(* compile-command:"make -C .." *)
35
(* End: *)

Also available in: Unified diff