Source file lifter.ml

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
open Expect_test_common.Std

type filename = File.Name.t

class virtual ['a] lift_filename =
  object
    method virtual filename : filename -> 'a
  end

type location = File.Location.t =
  { filename : filename
  ; line_number : int
  ; line_start : int
  ; start_pos : int
  ; end_pos : int
  }

and 'a body = 'a Expectation.Body.t =
  | Exact of string
  | Output
  | Pretty of 'a
  | Unreachable

and 'a expectation = 'a Expectation.t =
  { tag : string option
  ; body : 'a body
  ; extid_location : location
  ; body_location : location
  }

and raw = string expectation [@@deriving traverse_lift]