Docstrings(3) OCaml library Docstrings(3) NAME Docstrings - Documentation comments Module Module Docstrings Documentation Module Docstrings : sig end Documentation comments Warning: this module is unstable and part of Compiler_libs . val init : unit -> unit (Re)Initialise all docstring state val warn_bad_docstrings : unit -> unit Emit warnings for unattached and ambiguous docstrings Docstrings type docstring Documentation comments val docstring : string -> Location.t -> docstring Create a docstring val register : docstring -> unit Register a docstring val docstring_body : docstring -> string Get the text of a docstring val docstring_loc : docstring -> Location.t Get the location of a docstring Set functions These functions are used by the lexer to associate docstrings to the locations of tokens. val set_pre_docstrings : Lexing.position -> docstring list -> unit Docstrings immediately preceding a token val set_post_docstrings : Lexing.position -> docstring list -> unit Docstrings immediately following a token val set_floating_docstrings : Lexing.position -> docstring list -> unit Docstrings not immediately adjacent to a token val set_pre_extra_docstrings : Lexing.position -> docstring list -> unit Docstrings immediately following the token which precedes this one val set_post_extra_docstrings : Lexing.position -> docstring list -> unit Docstrings immediately preceding the token which follows this one Items The Docstrings.docs type represents documentation attached to an item. type docs = { docs_pre : docstring option ; docs_post : docstring option ; } val empty_docs : docs val docs_attr : docstring -> Parsetree.attribute val add_docs_attrs : docs -> Parsetree.attributes -> Parsetree.attributes Convert item documentation to attributes and add them to an attribute list val symbol_docs : unit -> docs Fetch the item documentation for the current symbol. This also marks this documentation (for ambiguity warnings). val symbol_docs_lazy : unit -> docs Lazy.t val rhs_docs : int -> int -> docs Fetch the item documentation for the symbols between two positions. This also marks this documentation (for ambiguity warnings). val rhs_docs_lazy : int -> int -> docs Lazy.t val mark_symbol_docs : unit -> unit Mark the item documentation for the current symbol (for ambiguity warnings). val mark_rhs_docs : int -> int -> unit Mark as associated the item documentation for the symbols between two positions (for ambiguity warnings) Fields and constructors The Docstrings.info type represents documentation attached to a field or constructor. type info = docstring option val empty_info : info val info_attr : docstring -> Parsetree.attribute val add_info_attrs : info -> Parsetree.attributes -> Parsetree.attributes Convert field info to attributes and add them to an attribute list val symbol_info : unit -> info Fetch the field info for the current symbol. val rhs_info : int -> info Fetch the field info following the symbol at a given position. Unattached comments The Docstrings.text type represents documentation which is not attached to anything. type text = docstring list val empty_text : text val empty_text_lazy : text Lazy.t val text_attr : docstring -> Parsetree.attribute val add_text_attrs : text -> Parsetree.attributes -> Parsetree.attributes Convert text to attributes and add them to an attribute list val symbol_text : unit -> text Fetch the text preceding the current symbol. val symbol_text_lazy : unit -> text Lazy.t val rhs_text : int -> text Fetch the text preceding the symbol at the given position. val rhs_text_lazy : int -> text Lazy.t Extra text There may be additional text attached to the delimiters of a block (e.g. struct and end ). This is fetched by the following functions, which are applied to the contents of the block rather than the delimiters. val symbol_pre_extra_text : unit -> text Fetch additional text preceding the current symbol val symbol_post_extra_text : unit -> text Fetch additional text following the current symbol val rhs_pre_extra_text : int -> text Fetch additional text preceding the symbol at the given position val rhs_post_extra_text : int -> text Fetch additional text following the symbol at the given position val rhs_post_text : int -> text Fetch text following the symbol at the given position module WithMenhir : sig end OCamldoc 2024-02-29 Docstrings(3)