package ocamlformat-mlx-lib
sectionYPositions = computeSectionYPositions($el), 10)"
x-init="setTimeout(() => sectionYPositions = computeSectionYPositions($el), 10)"
>
OCaml .mlx Code Formatter
Install
dune-project
Dependency
Authors
Maintainers
Sources
ocamlformat-mlx-0.28.1.1.tbz
sha256=087d7256a52808715875814d8bccf9172f97e933b398fc8d29ec40dc89fa9e0e
sha512=809b690e6c21110f81918dfdb1b5efecd185a4f26eadb2bb3aa6eb8069db20989e8797650b22a2207b6b26abe97db357c2dc6056943a3a4f630c4e1a0ebb4f1b
doc/src/ocamlformat-mlx-lib.ocaml_common/longident.ml.html
Source file longident.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 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72(**************************************************************************) (* *) (* OCaml *) (* *) (* Xavier Leroy, projet Cristal, INRIA Rocquencourt *) (* *) (* Copyright 1996 Institut National de Recherche en Informatique et *) (* en Automatique. *) (* *) (* All rights reserved. This file is distributed under the terms of *) (* the GNU Lesser General Public License version 2.1, with the *) (* special exception on linking described in the file LICENSE. *) (* *) (**************************************************************************) type t = Lident of string | Ldot of t Location.loc * string Location.loc | Lapply of t Location.loc * t Location.loc let rec same t t' = t == t' || match t, t' with | Lident s, Lident s' -> String.equal s s' | Ldot ({ txt = t; _ }, { txt = s; _ }), Ldot ({ txt = t'; _ }, { txt = s'; _ }) -> if String.equal s s' then same t t' else false | Lapply ({ txt = tl; _ }, { txt = tr; _ }), Lapply ({ txt = tl'; _ }, { txt = tr'; _ }) -> same tl tl' && same tr tr' | _, _ -> false let rec flat accu = function Lident s -> s :: accu | Ldot({ txt = lid; _ }, { txt = s; _ }) -> flat (s :: accu) lid | Lapply(_, _) -> Misc.fatal_error "Longident.flat" let flatten lid = flat [] lid let last = function Lident s -> s | Ldot(_, s) -> s.txt | Lapply(_, _) -> Misc.fatal_error "Longident.last" let rec split_at_dots s pos = try let dot = String.index_from s pos '.' in String.sub s pos (dot - pos) :: split_at_dots s (dot + 1) with Not_found -> [String.sub s pos (String.length s - pos)] let unflatten l = match l with | [] -> None | hd :: tl -> Some (List.fold_left (fun p s -> Ldot(Location.mknoloc p, Location.mknoloc s)) (Lident hd) tl ) let parse s = match unflatten (split_at_dots s 0) with | None -> Lident "" (* should not happen, but don't put assert false so as not to crash the toplevel (see Genprintval) *) | Some v -> v
sectionYPositions = computeSectionYPositions($el), 10)"
x-init="setTimeout(() => sectionYPositions = computeSectionYPositions($el), 10)"
>