- Stringify Object.signature() instead of str()-ing the bound method, which produced "<bound method Class.signature of ...>" reprs - Skip alias members that cannot resolve (stdlib/third-party imports) while preserving resolvable package re-exports; return None for empty signatures (classes without __init__ args) - Add MCP renderer regression tests for signature cleanliness, alias filtering, and package re-export preservation
81 lines
4.4 KiB
JSON
81 lines
4.4 KiB
JSON
{
|
|
"module": "docforge.models.object",
|
|
"content": {
|
|
"path": "docforge.models.object",
|
|
"docstring": "# Summary\n\nDocumentation model representing individual Python objects.\n\nThis module defines the `DocObject` class, the fundamental recursive unit of\nthe doc-forge documentation model. Each `DocObject` represents a Python\nentity such as a class, function, method, or attribute, and may contain nested\nmembers that form a hierarchical documentation structure.\n\n---\n\nNotes:\n - `DocObject` instances form a tree mirroring the Python import hierarchy.\n - Objects are renderer-agnostic and may be consumed by any renderer.\n\n---",
|
|
"objects": {
|
|
"DocObject": {
|
|
"name": "DocObject",
|
|
"kind": "class",
|
|
"path": "docforge.models.object.DocObject",
|
|
"signature": "DocObject(name: str, kind: str, path: str, signature: str | None = None, docstring: str | None = None)",
|
|
"docstring": "Representation of a documented Python object.\n\nA `DocObject` models a single Python entity discovered during\nintrospection. Objects may contain nested members, allowing the structure\nof modules, classes, and other containers to be represented recursively.\n\nAttributes:\n name (str):\n Local name of the object.\n\n kind (str):\n Type of object (for example `class`, `function`, `method`, or `attribute`).\n\n path (str):\n Fully qualified dotted path to the object.\n\n signature (str | None):\n Callable signature if the object represents a callable.\n\n docstring (str | None):\n Raw docstring text extracted from the source code.\n\n members (dict[str, DocObject]):\n Mapping of member names to child `DocObject` instances.",
|
|
"members": {
|
|
"name": {
|
|
"name": "name",
|
|
"kind": "attribute",
|
|
"path": "docforge.models.object.DocObject.name",
|
|
"signature": null,
|
|
"docstring": null
|
|
},
|
|
"kind": {
|
|
"name": "kind",
|
|
"kind": "attribute",
|
|
"path": "docforge.models.object.DocObject.kind",
|
|
"signature": null,
|
|
"docstring": null
|
|
},
|
|
"path": {
|
|
"name": "path",
|
|
"kind": "attribute",
|
|
"path": "docforge.models.object.DocObject.path",
|
|
"signature": null,
|
|
"docstring": null
|
|
},
|
|
"signature": {
|
|
"name": "signature",
|
|
"kind": "attribute",
|
|
"path": "docforge.models.object.DocObject.signature",
|
|
"signature": null,
|
|
"docstring": null
|
|
},
|
|
"docstring": {
|
|
"name": "docstring",
|
|
"kind": "attribute",
|
|
"path": "docforge.models.object.DocObject.docstring",
|
|
"signature": null,
|
|
"docstring": null
|
|
},
|
|
"members": {
|
|
"name": "members",
|
|
"kind": "attribute",
|
|
"path": "docforge.models.object.DocObject.members",
|
|
"signature": null,
|
|
"docstring": null
|
|
},
|
|
"add_member": {
|
|
"name": "add_member",
|
|
"kind": "function",
|
|
"path": "docforge.models.object.DocObject.add_member",
|
|
"signature": "add_member(obj: DocObject) -> None",
|
|
"docstring": "Add a child documentation object.\n\nThis is typically used when attaching methods to classes or\nnested objects to their parent containers.\n\nArgs:\n obj (DocObject):\n Documentation object to add as a member."
|
|
},
|
|
"get_member": {
|
|
"name": "get_member",
|
|
"kind": "function",
|
|
"path": "docforge.models.object.DocObject.get_member",
|
|
"signature": "get_member(name: str) -> DocObject",
|
|
"docstring": "Retrieve a member object by name.\n\nArgs:\n name (str):\n Name of the member to retrieve.\n\nReturns:\n DocObject:\n The corresponding `DocObject` instance.\n\nRaises:\n KeyError:\n If the member does not exist."
|
|
},
|
|
"get_all_members": {
|
|
"name": "get_all_members",
|
|
"kind": "function",
|
|
"path": "docforge.models.object.DocObject.get_all_members",
|
|
"signature": "get_all_members() -> Iterable[DocObject]",
|
|
"docstring": "Return all child members of the object.\n\nReturns:\n Iterable[DocObject]:\n An iterable of `DocObject` instances representing nested members."
|
|
}
|
|
}
|
|
}
|
|
}
|
|
}
|
|
} |