File: expr14.ml

package info (click to toggle)
ocaml-visitors 20200210-3
  • links: PTS, VCS
  • area: main
  • in suites: bullseye
  • size: 1,896 kB
  • sloc: ml: 4,077; makefile: 44; sh: 18
file content (20 lines) | stat: -rw-r--r-- 456 bytes parent folder | download | duplicates (5)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
open Hashcons
open Expr12 (* [oexpr] *)
open Expr13 (*  [expr] *)
open Expr08 (* [hexpr] *)

let import : expr -> hexpr =
  let v = object (self)
    inherit [_] omap
    method visit_'expr _env (E e) =
      h (self#visit_oexpr _env e)
  end in
  v # visit_'expr ()

let export : hexpr -> expr =
  let v = object (self)
    inherit [_] omap
    method visit_'expr _env (H { node = e; _ }) =
      E (self#visit_oexpr _env e)
  end in
  v # visit_'expr ()