* http://helm.cs.unibo.it/
*)
+val baseuri_of_file : string -> string
+
+val baseuri_of_baseuri_decl:
+ ('a, 'b, 'c, 'd, 'e) GrafiteAst.statement -> string option
+
+ (** check whether no objects are defined below a given baseuri *)
+val is_empty: string -> bool
+
+(** 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 *)
+
+val absolute_path: string -> string
(** @return true if file is a (textual) proof script *)
val is_proof_script: string -> bool
* it *)
val append_phrase_sep: string -> string
-val strip_trailing_blanks: string -> string
+val trim_blanks: string -> string
+val strip_trailing_slash: string -> string
+val normalize_dir: string -> string (** add trailing "/" if missing *)
+val strip_suffix: suffix:string -> string -> string
+
+ (* split a string at character, char defaults to ' ' *)
+val split: ?char:char -> string -> string list
+
+val list_uniq: 'a list -> 'a list (* uniq unix filter on lists *)
+
+ (** @return tl tail of a list starting at a given element
+ * @param eq equality to be used, defaults to physical equality (==)
+ * @raise Not_found *)
+val list_tl_at: ?equality:('a -> 'a -> bool) -> 'a -> 'a list -> 'a list
(** @raise Failure *)
val unopt: 'a option -> 'a
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
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_conclusion: MatitaTypes.status -> Cic.term
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_baseuri: 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
+