Project

General

Profile

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

    
7
let any x = x
8

    
9
let replace_op_expr = object (self)
10
  inherit [_] vhdl_map as super
11

    
12
  method! visit_vhdl_expr_t env e = 
13
    match e with
14
    | Op ({id=""; args=hd::[]}) -> self#visit_vhdl_expr_t env hd
15
    | _ -> super#visit_vhdl_expr_t env e
16
end
17

    
18
let to_lustre = object (self)
19
  inherit Ppxlib_traverse_builtins.map
20
  inherit mini_vhdl_to_lustre_map as super
21

    
22
  method unit: unit T.map = any
23
end
24

    
25
let to_mini_vhdl = object (self)
26
  inherit Ppxlib_traverse_builtins.map
27
  inherit vhdl_2_mini_vhdl_map as super
28

    
29
  method unit: unit T.map = any
30
end
(9-9/10)