sig
  type docstring
  val docstring : string -> Location.t -> Ast_402.??.docstring
  val docstring_body : Ast_402.??.docstring -> string
  val docstring_loc : Ast_402.??.docstring -> Location.t
  type docs = {
    docs_pre : Ast_402.??.docstring option;
    docs_post : Ast_402.??.docstring option;
  }
  val empty_docs : Ast_402.??.docs
  val docs_attr : Ast_402.??.docstring -> Ast_402.Parsetree.attribute
  val add_docs_attrs :
    Ast_402.??.docs ->
    Ast_402.Parsetree.attributes -> Ast_402.Parsetree.attributes
  type info = Ast_402.??.docstring option
  val empty_info : Ast_402.??.info
  val info_attr : Ast_402.??.docstring -> Ast_402.Parsetree.attribute
  val add_info_attrs :
    Ast_402.??.info ->
    Ast_402.Parsetree.attributes -> Ast_402.Parsetree.attributes
  type text = Ast_402.??.docstring list
  val empty_text : Ast_402.??.text
  val text_attr : Ast_402.??.docstring -> Ast_402.Parsetree.attribute
  val add_text_attrs :
    Ast_402.??.text ->
    Ast_402.Parsetree.attributes -> Ast_402.Parsetree.attributes
end