(* Copyright (C) 2004-2005, HELM Team. * * This file is part of HELM, an Hypertextual, Electronic * Library of Mathematics, developed at the Computer Science * Department, University of Bologna, Italy. * * HELM is free software; you can redistribute it and/or * modify it under the terms of the GNU General Public License * as published by the Free Software Foundation; either version 2 * of the License, or (at your option) any later version. * * HELM is distributed in the hope that it will be useful, * but WITHOUT ANY WARRANTY; without even the implied warranty of * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the * GNU General Public License for more details. * * You should have received a copy of the GNU General Public License * along with HELM; if not, write to the Free Software * Foundation, Inc., 59 Temple Place - Suite 330, Boston, * MA 02111-1307, USA. * * For details, see the HELM World-Wide-Web page, * http://helm.cs.unibo.it/ *) (** removes a file if it exists *) val safe_remove: string -> unit val is_dir: string -> bool (** @return true if file is a directory *) val is_regular: string -> bool (** @return true if file is a regular file *) val input_file: string -> string (** read all the contents of file to string *) val output_file: string -> string -> unit (** write string to file *) (** @return true if file is a (textual) proof script *) val is_proof_script: string -> bool (** @return true if file is a (binary) proof object *) val is_proof_object: string -> bool (** given a phrase, if it doesn't end with BuildTimeConf.phrase_sep, append * it *) val append_phrase_sep: string -> string val strip_trailing_blanks: string -> string val strip_trailing_slash: string -> string val list_uniq: 'a list -> 'a list (* uniq unix filter on lists *) (** @raise Failure *) val unopt: 'a option -> 'a (** Gdome.element of a MathML document whose rendering should be blank. Used * by cicBrowser to render "about:blank" document *) val empty_mathml: unit -> Gdome.document val empty_boxml: unit -> Gdome.document exception History_failure type 'a memento class type ['a] history = object ('b) method add : 'a -> unit method next : 'a (** @raise History_failure *) method previous : 'a (** @raise History_failure *) method load: 'a memento -> unit method save: 'a memento method is_begin: bool method is_end: bool end (** shell like history: new items added at the end of the history * @param size maximum history size *) class shell_history : int -> [string] history (** browser like history: new items added at the current point of the history * @param size maximum history size * @param first element in history (this history is never empty) *) class ['a] browser_history: ?memento:'a memento -> int -> 'a -> ['a] history (** create a singleton from a given function. Given function is invoked the * first time it gets called. Next invocation will return first value *) val singleton: (unit -> 'a) -> (unit -> 'a) (** create a directory, building also parents if needed * @raise Failure when unable to create some directory *) val mkdir: string -> unit val qualify: MatitaTypes.status -> string -> string val get_proof_status: MatitaTypes.status -> ProofEngineTypes.status val get_proof_metasenv: MatitaTypes.status -> Cic.metasenv val get_proof_context: MatitaTypes.status -> Cic.context val get_proof_aliases: MatitaTypes.status -> DisambiguateTypes.environment (** given the base name of an image, returns its full path *) val image_path: string -> string val obj_file_of_script: string -> string (** invoke a given function and return its value; in addition il will print * the given string before invoking it and "/" ^ the given string afterwards. * This permit tracing of functions which does not return a value *) val debug_wrap: string -> (unit -> 'a) -> 'a