package rocq-runtime
Install
dune-project
Dependency
Authors
Maintainers
Sources
sha256=35cd03fc4193969b1cce01190340e5c129c1ba8f02242a9e6dff4b83be118759
doc/rocq-runtime.kernel/Section/index.html
Module SectionSource
Kernel implementation of sections.
Type of sections with additional data 'a
Manipulating sections
Open a new section with the provided universe polymorphic status. Sections can be nested, with the proviso that polymorphic sections cannot appear inside a monomorphic one. A custom data can be attached to this section, that will be returned by close_section.
val close_section :
'a t ->
'a t option * section_entry list * Univ.ContextSet.t * Sorts.QVar.Set.t * 'aClose the current section and returns the entries defined inside, the set of global monomorphic constraints added in this section, and the custom data provided at the opening of the section.
Extending sections
Extend the current section with a local definition (cf. push_named).
Extend the current section with a local universe context. Assumes that the last opened section is polymorphic.
Extend the current section with a global universe context. Assumes that the last opened section is monomorphic.
Extend the current section with a global quality context.
Push a global entry in this section.
Retrieving section data
Returns all polymorphic universes, including those from previous sections. Earlier sections are earlier in the array.
NB: even if the array is empty there may be polymorphic constraints about monomorphic universes, which prevent declaring monomorphic globals.
Section segment at the time of the constant declaration
Section segment at the time of the inductive declaration