Commit d18d24fb authored by MARCHE Claude's avatar MARCHE Claude

doc/api. Documenting more modules. Fix compilation instruction

parent 9f667993
......@@ -174,7 +174,7 @@ LIB_UTIL = config bigInt util opt lists strings \
lexlib print_tree cmdline warning sysutil rc plugin bigInt number pqueue
LIB_CORE = ident ty term pattern decl theory \
task pretty_sig pretty dterm env trans printer model_parser
task pretty dterm env trans printer model_parser
LIB_DRIVER = prove_client call_provers driver_ast driver_parser driver_lexer driver \
whyconf autodetection \
......@@ -1898,8 +1898,9 @@ MODULESTODOC = \
util/util util/opt util/lists util/strings \
util/extmap util/extset util/exthtbl \
util/weakhtbl util/stdlib util/rc util/debug \
util/loc util/pp util/bigInt util/number \
core/ident core/ty core/term core/decl core/theory \
core/env core/task core/trans \
core/env core/task core/trans core/pretty_sig core/pretty core/printer \
driver/whyconf driver/call_provers driver/driver \
transform/args_wrapper \
session/session_itp session/controller_itp \
......
......@@ -40,7 +40,7 @@ providing pretty-printers.
Assuming the lines above are written in a file \texttt{f.ml}, it can
be compiled using
\begin{verbatim}
ocamlfind ocamlc -package why3 f.ml -o f
ocamlfind ocamlc -package why3 -linkpkg f.ml -o f
\end{verbatim}
Running the generated executable \texttt{f} results in the following output.
\begin{verbatim}
......
......@@ -9,6 +9,7 @@
(* *)
(********************************************************************)
(** Pretty-printing various objects from Why3's core logic *)
val why3_keywords : string list
......
(********************************************************************)
(* *)
(* The Why3 Verification Platform / The Why3 Development Team *)
(* Copyright 2010-2018 -- Inria - CNRS - Paris-Sud University *)
(* *)
(* This software is distributed under the terms of the GNU Lesser *)
(* General Public License version 2.1, with the special exception *)
(* on linking described in file LICENSE. *)
(* *)
(********************************************************************)
open Format
open Ident
open Ty
open Term
open Decl
open Theory
open Task
module type Printer = sig
val forget_all : unit -> unit (* flush id_unique *)
val forget_tvs : unit -> unit (* flush id_unique for type vars *)
val forget_var : vsymbol -> unit (* flush id_unique for a variable *)
val print_id_labels : formatter -> ident -> unit (* labels and location *)
val print_tv : formatter -> tvsymbol -> unit (* type variable *)
val print_vs : formatter -> vsymbol -> unit (* variable *)
val print_ts : formatter -> tysymbol -> unit (* type symbol *)
val print_ls : formatter -> lsymbol -> unit (* logic symbol *)
val print_cs : formatter -> lsymbol -> unit (* constructor symbol *)
val print_pr : formatter -> prsymbol -> unit (* proposition name *)
val print_th : formatter -> theory -> unit (* theory name *)
val print_ty : formatter -> ty -> unit (* type *)
val print_vsty : formatter -> vsymbol -> unit (* variable : type *)
val print_quant : formatter -> quant -> unit (* quantifier *)
val print_binop : asym:bool -> formatter -> binop -> unit (* binary operator *)
val print_pat : formatter -> pattern -> unit (* pattern *)
val print_term : formatter -> term -> unit (* term *)
val print_label : formatter -> label -> unit
val print_loc : formatter -> Loc.position -> unit
val print_pkind : formatter -> prop_kind -> unit
val print_meta_arg : formatter -> meta_arg -> unit
val print_meta_arg_type : formatter -> meta_arg_type -> unit
val print_ty_decl : formatter -> tysymbol -> unit
val print_data_decl : formatter -> data_decl -> unit
val print_param_decl : formatter -> lsymbol -> unit
val print_logic_decl : formatter -> logic_decl -> unit
val print_ind_decl : formatter -> ind_sign -> ind_decl -> unit
val print_next_data_decl : formatter -> data_decl -> unit
val print_next_logic_decl : formatter -> logic_decl -> unit
val print_next_ind_decl : formatter -> ind_decl -> unit
val print_prop_decl : formatter -> prop_decl -> unit
val print_decl : formatter -> decl -> unit
val print_tdecl : formatter -> tdecl -> unit
val print_task : formatter -> task -> unit
val print_sequent : formatter -> task -> unit
val print_theory : formatter -> theory -> unit
val print_namespace : formatter -> string -> theory -> unit
end
......@@ -9,6 +9,8 @@
(* *)
(********************************************************************)
(** Server for a client/server communication with an external graphical interface *)
open Itp_communication
(* The server part of the protocol *)
......
......@@ -9,6 +9,8 @@
(* *)
(********************************************************************)
(** Wrapper for big nums, implemented either with OCaml's [Nums] or [ZArith] *)
type t
val compare : t -> t -> int
......
......@@ -9,9 +9,11 @@
(* *)
(********************************************************************)
(** Source locations *)
open Format
(* Lexing locations *)
(** {2 Lexing locations} *)
val current_offset : int ref
val reloc : Lexing.position -> Lexing.position
......@@ -19,7 +21,7 @@ val set_file : string -> Lexing.lexbuf -> unit
val transfer_loc : Lexing.lexbuf -> Lexing.lexbuf -> unit
(* locations in files *)
(** {2 locations in files} *)
type position
......@@ -40,7 +42,7 @@ val gen_report_position : formatter -> position -> unit
val report_position : formatter -> position -> unit
(* located exceptions *)
(** {2 located exceptions} *)
exception Located of position * exn
......@@ -64,7 +66,7 @@ val try7: ?loc:position ->
val error: ?loc:position -> exn -> 'a
(* messages *)
(** {2 located error messages} *)
exception Message of string
......
......@@ -11,7 +11,7 @@
open Format
(** Construction *)
(** General functions for representations of numeric values *)
exception InvalidConstantLiteral of int * string
......
......@@ -9,7 +9,7 @@
(* *)
(********************************************************************)
(*i $Id: pp.mli,v 1.22 2009-10-19 11:55:33 bobot Exp $ i*)
(** Helpers for formatted pretty-printing *)
open Format
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment