aboutsummaryrefslogtreecommitdiff
path: root/vernac/comDefinition.mli
blob: fa4860b079d634e42d498c3f237ea616b759ba02 (plain)
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
(************************************************************************)
(*         *   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)         *)
(************************************************************************)

open Names
open Entries
open Decl_kinds
open Redexpr
open Constrexpr

(** {6 Definitions/Let} *)

val do_definition
  : program_mode:bool
  -> ?hook:Lemmas.declaration_hook
  -> Id.t
  -> definition_kind
  -> universe_decl_expr option
  -> local_binder_expr list
  -> red_expr option
  -> constr_expr
  -> constr_expr option
  -> unit

(************************************************************************)
(** Internal API  *)
(************************************************************************)

(** Not used anywhere. *)
val interp_definition : program_mode:bool ->
  universe_decl_expr option -> local_binder_expr list -> polymorphic -> red_expr option -> constr_expr ->
  constr_expr option -> Safe_typing.private_constants definition_entry * Evd.evar_map *
                        UState.universe_decl * Impargs.manual_implicits