Project

General

Profile

Download (707 Bytes) Statistics
| Branch: | Tag: | Revision:
1
open Vhdl_ast_map
2
open Mini_vhdl_to_lustre
3
open Vhdl_2_mini_vhdl_map
4
open Vhdl_ast
5
open Mini_vhdl_ast
6
open Ppxlib_traverse_builtins
7

    
8
let any x = x
9

    
10
let replace_op_expr = object (self)
11
  inherit Ppxlib_traverse_builtins.map
12
  inherit vhdl_map as super
13

    
14
  method unit: unit T.map = any
15

    
16
  method vhdl_expr_t = function
17
    | Op ({id=""; args=hd::[]}) -> self#vhdl_expr_t hd
18
    | x -> super#vhdl_expr_t x
19
end
20

    
21
let to_lustre = object (self)
22
  inherit Ppxlib_traverse_builtins.map
23
  inherit mini_vhdl_to_lustre_map as super
24

    
25
  method unit: unit T.map = any
26
end
27

    
28
let to_mini_vhdl = object (self)
29
  inherit Ppxlib_traverse_builtins.map
30
  inherit vhdl_2_mini_vhdl_map as super
31

    
32
  method unit: unit T.map = any
33
end
(10-10/12)