package toffee

  1. Overview
  2. Docs
Legend:
Page
Library
Module
Module type
Parameter
Class
Class type
Source

Source file in_both_abs_axis.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
type 'a t = { horizontal : 'a; vertical : 'a }

let make ~horizontal ~vertical = { horizontal; vertical }

let get t axis =
  match axis with
  | Absolute_axis.Horizontal -> t.horizontal
  | Absolute_axis.Vertical -> t.vertical

let map f t = { horizontal = f t.horizontal; vertical = f t.vertical }

let map2 f t1 t2 =
  {
    horizontal = f t1.horizontal t2.horizontal;
    vertical = f t1.vertical t2.vertical;
  }

let equal eq t1 t2 =
  eq t1.horizontal t2.horizontal && eq t1.vertical t2.vertical

let compare cmp t1 t2 =
  match cmp t1.horizontal t2.horizontal with
  | 0 -> cmp t1.vertical t2.vertical
  | c -> c

let to_string f t =
  Printf.sprintf "{ horizontal = %s; vertical = %s }" (f t.horizontal)
    (f t.vertical)

let pp f fmt t =
  Format.fprintf fmt "{ horizontal = %a; vertical = %a }" f t.horizontal f
    t.vertical