forked from ocaml-ppx/ocamlformat
-
Notifications
You must be signed in to change notification settings - Fork 26
/
Copy pathExposed.mli
39 lines (29 loc) · 1.51 KB
/
Exposed.mli
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
35
36
37
38
39
(**************************************************************************)
(* *)
(* OCamlFormat *)
(* *)
(* Copyright (c) Facebook, Inc. and its affiliates. *)
(* *)
(* This source code is licensed under the MIT license found in *)
(* the LICENSE file in the root directory of this source tree. *)
(* *)
(**************************************************************************)
(** Predicates for determining if an AST starts/ends with a [<]/[>] symbol
(respectively) when printed.
These are used to avoid emitting the sequences [\{<], [\[<], [>\}] and
[>\]], which are reserved keywords. *)
open Extended_ast
(** Predicates for [<] on the LHS of printed AST nodes. *)
module Left : sig
val core_type : core_type -> bool
end
module Right : sig
(** Predicates for [>] on the RHS of printed AST nodes. *)
val core_type : core_type -> bool
val label_declaration : label_declaration -> bool
val row_field : row_field -> bool
val payload : payload -> bool
val list : elt:('a -> bool) -> 'a list -> bool
(** [list ~elt l] holds iff [elt] holds of the {i last} element in [l], and
is [false] if [l] is empty. *)
end