package doc-ock

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

OCaml path fragments for specifying module substitutions

module Resolved : sig ... end
type kind = Kind.fragment
type sort = [
  1. | `Root
  2. | `Branch
]
type ('a, 'b, 'c) raw =
  1. | Resolved : ('a, 'b, 'c) Resolved.raw -> ('a, 'b, 'c) raw
  2. | Dot : 'a signature * string -> ('a, [< kind ], [< sort Branch ]) raw
and ('a, 'b) t = ('a, 'b, [ `Branch ]) raw
and 'a any = ('a, kind) t
and 'a signature = ('a, Kind.fragment_module, [ `Root | `Branch ]) raw
type 'a module_ = ('a, Kind.fragment_module) t
type 'a type_ = ('a, Kind.fragment_type) t

Explicit coercions

val signature_of_module : 'a module_ -> 'a signature
val any_sort : ('a, 'b, 'c) raw -> ('a, 'b, sort) raw
val any : ('a, 'b) t -> 'a any

Attaching fragments to valid paths

val path : 'a Path.module_ -> ('a, 'b) t -> ('a, 'b) Path.t

Generic operations

val equal : equal:('a -> 'a -> bool) -> ('a, 'b) t -> ('a, 'b) t -> bool
val hash : hash:('a -> int) -> ('a, 'b) t -> int
val sexp_of_t : ('a -> sexp) -> ('a, _, _) raw -> sexp
val split : ('a, 'b) t -> string * ('a, 'b) t option