Source file configuration.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
32
33
34
type match_kind =
| Exact
| Fuzzy
type t =
{ match_kind : match_kind
; significant_whitespace : bool
; disable_substring_matching : bool
; match_newline_toplevel : bool
; fresh : unit -> string
; substitute_in_place : bool
}
let counter =
let uuid_for_id_counter = ref 0 in
fun () ->
uuid_for_id_counter := !uuid_for_id_counter + 1;
Format.sprintf "!@#$%012d" !uuid_for_id_counter
let create
?(disable_substring_matching = false)
?(match_kind = Fuzzy)
?(significant_whitespace = false)
?(match_newline_toplevel = true)
?(fresh = counter)
?(substitute_in_place = true)
() =
{ match_kind
; significant_whitespace
; disable_substring_matching
; match_newline_toplevel
; fresh
; substitute_in_place
}