package coq-lsp
Language Server Protocol native server for Coq
Install
Dune Dependency
Authors
Maintainers
Sources
coq-lsp-0.2.3.8.19.tbz
sha256=dd5d0993261d3742e77ccac8344307d97b507b265d8743ae0ce33d0b3fcfd98a
sha512=76727400b27900fdd659af7f03c5f2cd979f50ea0c76ad6f5b5de56a53b9db06dba1e1c786fd3e8ab695e42d94c53d58415c0c5b5eef8192f9863eaf7dcca693
doc/src/coq-lsp.serlib/ser_pp.ml.html
Source file ser_pp.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 73 74 75
(************************************************************************) (* * The Coq Proof Assistant / The Coq Development Team *) (* v * Copyright INRIA, CNRS and contributors *) (* <O___,, * (see version control and CREDITS file for authors & dates) *) (* VV/ **************************************************************) (* // * This file is distributed under the terms of the *) (* * GNU Lesser General Public License Version 2.1 *) (* * (see LICENSE file for the text of the license) *) (************************************************************************) (************************************************************************) (* SerAPI: Coq interaction protocol with bidirectional serialization *) (************************************************************************) (* Copyright 2016-2019 MINES ParisTech -- License LGPL 2.1+ *) (* Copyright 2019-2023 Inria -- License LGPL 2.1+ *) (* Written by: Emilio J. Gallego Arias and others *) (************************************************************************) open Sexplib.Std type pp_tag = [%import: Pp.pp_tag] [@@deriving sexp, yojson] type block_type = [%import: Pp.block_type] [@@deriving sexp, yojson] module P = struct type _t = | Pp_empty | Pp_string of string | Pp_glue of _t list | Pp_box of block_type * _t | Pp_tag of pp_tag * _t (* Are those redundant? *) | Pp_print_break of int * int | Pp_force_newline | Pp_comment of string list [@@deriving sexp, yojson] open Pp let rec from_t (d : t) : _t = match repr d with | Ppcmd_empty -> Pp_empty | Ppcmd_string s -> Pp_string s | Ppcmd_glue l -> Pp_glue (List.map from_t l) | Ppcmd_box (bt,d) -> Pp_box(bt, from_t d) | Ppcmd_tag (t,d) -> Pp_tag(t, from_t d) | Ppcmd_print_break (n,m) -> Pp_print_break(n,m) | Ppcmd_force_newline -> Pp_force_newline | Ppcmd_comment s -> Pp_comment s let rec to_t (d : _t) : t = unrepr (match d with | Pp_empty -> Ppcmd_empty | Pp_string s -> Ppcmd_string s | Pp_glue l -> Ppcmd_glue (List.map to_t l) | Pp_box (bt,d) -> Ppcmd_box(bt, to_t d) | Pp_tag (t,d) -> Ppcmd_tag(t, to_t d) | Pp_print_break (n,m) -> Ppcmd_print_break(n,m) | Pp_force_newline -> Ppcmd_force_newline | Pp_comment s -> Ppcmd_comment s) end type t = Pp.t let t_of_sexp s = P.(to_t (_t_of_sexp s)) let sexp_of_t d = P.(sexp_of__t (from_t d)) let of_yojson json = Ppx_deriving_yojson_runtime.(P.(_t_of_yojson json >|= to_t)) let to_yojson level = P.(_t_to_yojson (from_t level)) type doc_view = [%import: Pp.doc_view] [@@deriving sexp, yojson]
sectionYPositions = computeSectionYPositions($el), 10)"
x-init="setTimeout(() => sectionYPositions = computeSectionYPositions($el), 10)"
>