package ocaml-solo5
Install
dune-project
Dependency
Authors
Maintainers
Sources
md5=47876167068345542f49279e8fd28896
sha512=272081ec51a6ed69c08e4e8fa64fee3df53fd84c66c0c07a653891c88b342cf74553e1c95711e4fbc18922c899a3448a649f3bd9858f8d89cae834ad2b67fffb
doc/compiler-libs.common/Path/index.html
Module Path
type t = | Pident of Ident.t(*Examples: x, List, int
*)| Pdot of t * string(*Examples: List.map, Float.Array
*)| Papply of t * t(*Examples: Set.Make(Int), Map.Make(Set.Make(Int))
*)| Pextra_ty of t * extra_ty(*
*)Pextra_ty (p, extra)are additional paths of types introduced by specific OCaml constructs. See below.
and extra_ty = | Pcstr_ty of string(*Pextra_ty (p, Pcstr_ty c)is the type of the inline record for constructorcinside typep.For example, in
type 'a t = Nil | Cons of {hd : 'a; tl : 'a t}The inline record type
*){hd : 'a; tl : 'a t}cannot be named by the user in the surface syntax, but internally it has the pathPextra_ty (Pident `t`, Pcstr_ty "Cons").| Pext_ty(*Pextra_ty (p, Pext_ty)is the type of the inline record for the extension constructorp.For example, in
type exn += Error of {loc : loc; msg : string}The inline record type
*){loc : loc; msg : string}cannot be named by the user in the surface syntax, but internally it has the pathPextra_ty (Pident `Error`, Pext_ty).
val equiv : (Ident.Unscoped.t * Ident.Unscoped.t) list -> t -> t -> boolSee ident.mli for the distrinction between same and equiv
val scope : t -> intval check_for_unbound_unscoped_idents :
Ident.Unscoped.Set.t ->
t ->
Ident.Unscoped.t optionval name : ?paren:(string -> bool) -> t -> stringval print : t Format_doc.printerval last : t -> stringval is_constructor_typath : t -> bool