package melange

  1. Overview
  2. Docs
Toolchain to produce JS from Reason/OCaml

Install

dune-project
 Dependency

Authors

Maintainers

Sources

melange-6.0.1-52.tbz
sha256=20123039b9009362857915da348376b637023eebe2e1152f8c619f352564e558
sha512=90d59d247691adcb6a9de74584db923cfb758b835466aa2230c907416d535acec39e34b76fb1ac00b4ee78ab8b56c8017cb4c5154e191db8ce15b54dcc84c545

doc/src/melange.js_parser/enum_common.ml.html

Source file enum_common.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
35
36
37
type explicit_type =
  | Boolean
  | Number
  | String
  | Symbol
  | BigInt [@@deriving ord]
include
  struct
    let _ = fun (_ : explicit_type) -> ()
    let rec compare_explicit_type :
      explicit_type -> explicit_type -> int =
      ((          fun lhs rhs ->
            match (lhs, rhs) with
            | (Boolean, Boolean) -> 0
            | (Number, Number) -> 0
            | (String, String) -> 0
            | (Symbol, Symbol) -> 0
            | (BigInt, BigInt) -> 0
            | _ ->
                let to_int =
                  function
                  | Boolean -> 0
                  | Number -> 1
                  | String -> 2
                  | Symbol -> 3
                  | BigInt -> 4 in
                compare (to_int lhs) (to_int rhs))
      [@ocaml.warning "-39"][@ocaml.warning "-A"])[@@ocaml.warning "-39"]
    let _ = compare_explicit_type
  end[@@ocaml.doc "@inline"][@@merlin.hide ]
let string_of_explicit_type =
  function
  | Boolean -> "boolean"
  | Number -> "number"
  | String -> "string"
  | Symbol -> "symbol"
  | BigInt -> "bigint"