package doc-ock

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

Identifiers for definitions

type kind = Kind.identifier
type ('a, 'b) t =
  1. | Root : 'a * string -> ('a, [< kind Module ]) t
  2. | Page : 'a * string -> ('a, [< kind Page ]) t
  3. | Module : 'a signature * string -> ('a, [< kind Module ]) t
  4. | Argument : 'a signature * int * string -> ('a, [< kind Module ]) t
  5. | ModuleType : 'a signature * string -> ('a, [< kind ModuleType ]) t
  6. | Type : 'a signature * string -> ('a, [< kind Type ]) t
  7. | CoreType : string -> ('a, [< kind Type ]) t
  8. | Constructor : 'a datatype * string -> ('a, [< kind Constructor ]) t
  9. | Field : 'a parent * string -> ('a, [< kind Field ]) t
  10. | Extension : 'a signature * string -> ('a, [< kind Extension ]) t
  11. | Exception : 'a signature * string -> ('a, [< kind Exception ]) t
  12. | CoreException : string -> ('a, [< kind Exception ]) t
  13. | Value : 'a signature * string -> ('a, [< kind Value ]) t
  14. | Class : 'a signature * string -> ('a, [< kind Class ]) t
  15. | ClassType : 'a signature * string -> ('a, [< kind ClassType ]) t
  16. | Method : 'a class_signature * string -> ('a, [< kind Method ]) t
  17. | InstanceVariable : 'a class_signature * string -> ('a, [< kind InstanceVariable ]) t
  18. | Label : 'a label_parent * string -> ('a, [< kind Label ]) t
and 'a any = ('a, kind) t
and 'a signature = ('a, Kind.signature) t
and 'a class_signature = ('a, Kind.class_signature) t
and 'a datatype = ('a, Kind.datatype) t
and 'a parent = ('a, Kind.parent) t
and 'a label_parent = ('a, Kind.label_parent) t
type 'a module_ = ('a, Kind.identifier_module) t
type 'a module_type = ('a, Kind.identifier_module_type) t
type 'a type_ = ('a, Kind.identifier_type) t
type 'a constructor = ('a, Kind.identifier_constructor) t
type 'a field = ('a, Kind.identifier_field) t
type 'a extension = ('a, Kind.identifier_extension) t
type 'a exception_ = ('a, Kind.identifier_exception) t
type 'a value = ('a, Kind.identifier_value) t
type 'a class_ = ('a, Kind.identifier_class) t
type 'a class_type = ('a, Kind.identifier_class_type) t
type 'a method_ = ('a, Kind.identifier_method) t
type 'a instance_variable = ('a, Kind.identifier_instance_variable) t
type 'a label = ('a, Kind.identifier_label) t
type 'a page = ('a, Kind.identifier_page) t
type 'a path_module = ('a, Kind.path_module) t
type 'a path_module_type = ('a, Kind.path_module_type) t
type 'a path_type = ('a, Kind.path_type) t
type 'a path_class_type = ('a, Kind.path_class_type) t
type 'a fragment_module = ('a, Kind.fragment_module) t
type 'a fragment_type = ('a, Kind.fragment_type) t
type 'a reference_module = ('a, Kind.reference_module) t
type 'a reference_module_type = ('a, Kind.reference_module_type) t
type 'a reference_type = ('a, Kind.reference_type) t
type 'a reference_constructor = ('a, Kind.reference_constructor) t
type 'a reference_field = ('a, Kind.reference_field) t
type 'a reference_extension = ('a, Kind.reference_extension) t
type 'a reference_exception = ('a, Kind.reference_exception) t
type 'a reference_value = ('a, Kind.reference_value) t
type 'a reference_class = ('a, Kind.reference_class) t
type 'a reference_class_type = ('a, Kind.reference_class_type) t
type 'a reference_method = ('a, Kind.reference_method) t
type 'a reference_instance_variable = ('a, Kind.reference_instance_variable) t
type 'a reference_label = ('a, Kind.reference_label) t
type 'a reference_page = ('a, Kind.reference_page) t

Explicit coercions

val signature_of_module : 'a module_ -> 'a signature
val signature_of_module_type : 'a module_type -> 'a signature
val class_signature_of_class : 'a class_ -> 'a class_signature
val class_signature_of_class_type : 'a class_type -> 'a class_signature
val datatype_of_type : 'a type_ -> 'a datatype
val parent_of_signature : 'a signature -> 'a parent
val parent_of_class_signature : 'a class_signature -> 'a parent
val parent_of_datatype : 'a datatype -> 'a parent
val label_parent_of_parent : 'a parent -> 'a label_parent
val label_parent_of_page : 'a page -> 'a label_parent
val any : ('a, 'b) t -> 'a any

Generic operations

val equal : equal:('a -> 'a -> bool) -> ('a, 'b) t -> ('a, 'b) t -> bool
val hash : hash:('a -> int) -> ('a, 'b) t -> int

Printing

val name : ('a, 'b) t -> string
val sexp_of_t : ('a -> sexp) -> ('a, _) t -> sexp

Root retrieval

val signature_root : 'a signature -> 'a
val module_root : 'a module_ -> 'a
val module_type_root : 'a module_type -> 'a
val class_signature_root : 'a class_signature -> 'a