package coq

  1. Overview
  2. Docs
Legend:
Library
Module
Module type
Parameter
Class
Class type

Main functions for translating module entries

translate_module produces a module_body out of a module_entry. In the output fields:

  • mod_expr is Abstract for a MType entry, or Algebraic for MExpr.
  • mod_type_alg is None only for a MExpr without explicit signature.

translate_modtype produces a module_type_body whose mod_type_alg cannot be None (and of course mod_expr is Abstract).

Low-level function for translating a module struct entry :

  • We translate to a module when a ModPath.t is given, otherwise to a module type.
  • The first output is the expanded signature
  • The second output is the algebraic expression, kept mostly for the extraction.

From an already-translated (or interactive) implementation and an (optional) signature entry, produces a final module_body

translate_mse_incl translate the mse of a module or module type given to an Include