package rotor

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

Module Modulescope

type module_type_constraint = Compiler.Path.t * Compiler.Longident.t Asttypes.loc * Compiler.Typedtree.with_constraint
type module_constraint =
  1. | InStr of Compiler.Typedtree.module_type list
  2. | InSig of module_type_constraint list list
type frame = private
  1. | Module of Compiler.Ident.t option * Elements.Module._sub_t * module_constraint * parameter_frame list
  2. | ModuleType of Compiler.Ident.t option * Elements.ModuleType._sub_t * module_type_constraint list list * parameter_frame list
  3. | Parameter of Compiler.Ident.t
val module_name : t -> string

module_name ((n, _), _) = n

module_sig ((_, sig), _) = sig

val default_toplevel_name : string

A default name for the the toplevel module of a scope.

val empty : t

The empty module scope with default_toplevel_name.

val peek : t -> frame

peek s returns the top scope frame of s, or raises Invalid_argument if the frame list is empty.

val peek_module_type : t -> Compiler.Ident.t option * Elements.ModuleType._sub_t * module_type_constraint list list * parameter_frame list
val peek_params : t -> parameter_frame list
val push_param : parameter_frame -> t -> t
val frame_is_naked : frame -> bool
val enter_module_binding : 'a Typedtree_views.module_view -> t -> t * 'a Typedtree_views.module_expr_view
val enter_param : Compiler.Ident.t -> t -> t
val in_frame_sigs : 'a Identifier.Chain.t -> frame -> bool
val to_identifier : ?check_sigs:bool -> ?id_tail:Identifier.Chain._t -> t -> Identifier.Chain._t Containers.Option.t
OCaml

Innovation. Community. Security.