package coq-serapi
Serialization library and protocol for machine interaction with the Coq proof assistant
Install
Dune Dependency
Authors
Maintainers
Sources
coq-serapi-8.18.0.0.18.3.tbz
sha256=d9a32c0033d720032011e9bf5e8d30d4b205ce276b6a81ab359fc461809e9b63
sha512=742d2b92b986e45044c19cd2bbfd5dd5346cfb4b0ec20f40811d8b0096c6e25192528359f98d2eed2a74ae67790d1f8cea382cb01fd7cf8903a5a917cca79a84
doc/src/coq-serapi.sertop_v8_12/comp_common.ml.html
Source file comp_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 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 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 91 92
(************************************************************************) (* * The Coq Proof Assistant / The Coq Development Team *) (* v * INRIA, CNRS and contributors - Copyright 1999-2018 *) (* <O___,, * (see CREDITS file for the list of authors) *) (* \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) *) (************************************************************************) (************************************************************************) (* Coq's serialization API *) (* Copyright 2016-2019 MINES ParisTech -- Dual License LGPL 2.1 / GPL3+ *) (* Copyright 2019-2022 Inria -- Dual License LGPL 2.1 / GPL3+ *) (* Written by: Emilio J. Gallego Arias, Karl Palmskog *) (************************************************************************) let fatal_exn exn info = let loc = Loc.get_loc info in let msg = Pp.(pr_opt_no_spc Loc.pr loc ++ fnl () ++ CErrors.iprint (exn, info)) in Format.eprintf "Error: @[%a@]@\n%!" Pp.pp_with msg; exit 1 let create_document ~debug ~set_impredicative_set ~disallow_sprop ~ml_path ~load_path ~rload_path ~quick ~in_file ~indices_matter ~omit_loc ~omit_att ~exn_on_opaque ~omit_env ~coq_path ~async ~async_workers ~error_recovery = (* initialization *) let options = Serlib.Serlib_init.{ omit_loc; omit_att; exn_on_opaque; omit_env } in Serlib.Serlib_init.init ~options; let dft_ml_path, vo_path = Serapi.Serapi_paths.coq_loadpath_default ~implicit:true ~coq_path in let ml_path = dft_ml_path @ ml_path in let vo_path = vo_path @ load_path @ rload_path in let allow_sprop = not disallow_sprop in let stm_flags = { Sertop_init.enable_async = async ; deep_edits = false ; async_workers = async_workers ; error_recovery } in let open Sertop_init in (* coq initialization *) coq_init { fb_handler = (fun _ _ -> ()) (* XXXX *) ; plugin_load = None ; debug ; set_impredicative_set ; allow_sprop ; indices_matter ; ml_path ; vo_path } Format.std_formatter; (* document initialization *) let stm_options = process_stm_flags stm_flags in let stm_options = { stm_options with async_proofs_tac_error_resilience = FNone ; async_proofs_cmd_error_resilience = false } in (* Disable due to https://github.com/ejgallego/coq-serapi/pull/94 *) let stm_options = { stm_options with async_proofs_tac_error_resilience = FNone ; async_proofs_cmd_error_resilience = false } in let stm_options = if quick then { stm_options with async_proofs_mode = APonLazy } else stm_options in let injections = [Coqargs.RequireInjection {lib="Coq.Init.Prelude"; prefix=None; export=Some Lib.Import;}] in Stm.init_process stm_options; let ndoc = { Stm.doc_type = Stm.VoDoc in_file ; injections } in (* Workaround, see https://github.com/ejgallego/coq-serapi/pull/101 *) if quick || stm_flags.enable_async <> None then Safe_typing.allow_delayed_constants := true; Stm.new_doc ndoc
sectionYPositions = computeSectionYPositions($el), 10)"
x-init="setTimeout(() => sectionYPositions = computeSectionYPositions($el), 10)"
>