community_6_readmenator_flowcharts - grisuno/ReadMenator GitHub Wiki
readmenator: _flowcharts
Community 6 | 12 files | cohesion 0.44
Definition
This community groups 12 file(s) rooted at readmenator with dominant language py (cohesion 0.44). Central symbols: ApiDocsWriter, ApiEntity, ApiLinker, ApiMarkdownRenderer, ApiParam, ApiReference, ApiReferenceBuilder, ArchitectureDiagramBuilder. Core file: readmenator/_flowcharts.py (54 symbols). Documented purpose: Deterministic API reference model: extraction, cross-references, coverage. Builds a Sphinx / Doxygen style API reference from the scanned graph with zero token.
Files
| File | Language | Layer | Symbols | Doc |
|---|---|---|---|---|
readmenator/_apidocs.py |
py | utility | 52 | yes |
readmenator/_apidocs_page.py |
py | presentation | 2 | yes |
readmenator/_apidocs_render.py |
py | presentation | 45 | yes |
readmenator/_docstrings.py |
py | utility | 30 | yes |
readmenator/_flowcharts.py |
py | utility | 54 | yes |
readmenator/_flowlayout.py |
py | utility | 11 | yes |
readmenator/_flowpage.py |
py | utility | 3 | yes |
readmenator/_pytypes.py |
py | utility | 16 | yes |
readmenator/_symindex.py |
py | utility | 22 | yes |
tests/test_apidocs.py |
py | testing | 48 | yes |
tests/test_flowcharts.py |
py | testing | 35 | yes |
tests/test_symindex.py |
py | testing | 10 | yes |
Key Symbols
ApiParam(class,readmenator/_apidocs.py:76)class ApiParam- One parameter of a callable signature.to_dict(method,readmenator/_apidocs.py:91)def to_dict(self)- Serialise to a plain dict for JSON output.ApiEntity(class,readmenator/_apidocs.py:98)class ApiEntity- One documented API element (module, type, callable, or data member).is_documented(method,readmenator/_apidocs.py:156)def is_documented(self)- Return True when any documentation text was found.to_dict(method,readmenator/_apidocs.py:160)def to_dict(self)- Serialise to a plain dict for JSON output.DocWarning(class,readmenator/_apidocs.py:180)class DocWarning- One documentation quality warning.to_dict(method,readmenator/_apidocs.py:197)def to_dict(self)- Serialise to a plain dict for JSON output.ApiReference(class,readmenator/_apidocs.py:204)class ApiReference- Complete API reference for one project.children(method,readmenator/_apidocs.py:221)def children(self, uid, kinds)- Return direct members of uid, optionally filtered by kind, in source order.to_dict(method,readmenator/_apidocs.py:232)def to_dict(self, schema_version)- Serialise the whole reference forapi.json._unparse(function,readmenator/_apidocs.py:244)def _unparse(node)- Return the source text of an AST node ("" for None)._PythonExtractor(class,readmenator/_apidocs.py:254)class _PythonExtractor- Extracts Python API entities with the nativeastmodule.__init__(method,readmenator/_apidocs.py:257)def __init__(self, file_id, language, include_private)- Initialise for one file.extract(method,readmenator/_apidocs.py:272)def extract(self, content)- Parse content; return False when it is not valid Python._read_all(method,readmenator/_apidocs.py:286)def _read_all(tree)- Return the names listed in a literal module__all__._visibility(method,readmenator/_apidocs.py:305)def _visibility(self, name, parent_uid)- Classify name as public, protected, or private._keep(method,readmenator/_apidocs.py:317)def _keep(self, name, visibility, documented)- Return True when the entity belongs in the reference._walk_body(method,readmenator/_apidocs.py:325)def _walk_body(self, body, parent_uid, prefix)- Extract entities from one statement list; return member uids._class(method,readmenator/_apidocs.py:344)def _class(self, node, parent_uid, prefix)- Extract one class and its members._params(method,readmenator/_apidocs.py:391)def _params(self, args, drop_receiver)- Convertast.argumentsinto ordered ApiParam records._render_params(method,readmenator/_apidocs.py:410)def _render_params(params, args, receiver)- Render a parameter list including/and*separators._body_facts(method,readmenator/_apidocs.py:432)def _body_facts(node)- Return (raised exception names, returns a value, is generator)._function(method,readmenator/_apidocs.py:455)def _function(self, node, parent_uid, prefix, in_class)- Extract one function, method, property, or constructor._data(method,readmenator/_apidocs.py:513)def _data(self, stmt, body, pos, parent_uid, prefix, in_class)- Extract a module constant or class attribute._matching_close(function,readmenator/_apidocs.py:564)def _matching_close(lines, start, scan_limit)- Return the zero-based line closing the first{at or after start._indent_end(function,readmenator/_apidocs.py:620)def _indent_end(lines, start)- Return the zero-based last line of an indentation block opened at start._split_top_level(function,readmenator/_apidocs.py:639)def _split_top_level(text, sep)- Split text on sep outside brackets and strings._param_span(function,readmenator/_apidocs.py:668)def _param_span(signature, name)- Return the (open, close) indexes of the parameter list after name.parse_signature_params(function,readmenator/_apidocs.py:685)def parse_signature_params(signature, name, language)- Split a non-Python signature into parameters and a return type.is_vendored_path(function,readmenator/_apidocs.py:759)def is_vendored_path(file_id, config)- Return True for minified bundles and files under vendored third-party trees.
Internal vs External Edges
- Internal resolved imports (EXTRACTED): 27
- Cross-boundary resolved imports (EXTRACTED): 35
Connections
- [EXTRACTED] depends_on community 3 <-> 6 (strength 0.9): Extracted import edge crosses communities: readmenator/init.py imports readmenator/_symindex.py.
- [EXTRACTED] depends_on community 6 <-> 0 (strength 0.9): Extracted import edge crosses communities: readmenator/_apidocs.py imports readmenator/_config.py.
- [EXTRACTED] depends_on community 6 <-> 1 (strength 0.9): Extracted import edge crosses communities: readmenator/_apidocs.py imports readmenator/_models.py.
- [EXTRACTED] depends_on community 6 <-> 5 (strength 0.9): Extracted import edge crosses communities: readmenator/_apidocs_page.py imports readmenator/_htmlpack.py.
- [EXTRACTED] depends_on community 4 <-> 6 (strength 0.9): Extracted import edge crosses communities: readmenator/_documentation.py imports readmenator/_flowcharts.py.
Risks
- [taint high]
readmenator/_documentation.py->readmenator/_flowcharts.pyviasubprocess(1 hops) - [layer strict]
tests/test_apidocs.py(testing) ->readmenator/_apidocs_page.py(presentation) - [layer strict]
tests/test_apidocs.py(testing) ->readmenator/_apidocs_render.py(presentation) - [layer strict]
tests/test_flowcharts.py(testing) ->readmenator/_apidocs_page.py(presentation)
Open Questions
- What would break if the most connected file in readmenator: _flowcharts changed?
- Should readmenator: _flowcharts be split, given cohesion 0.44?
Sources
readmenator/_apidocs.pyreadmenator/_apidocs_page.pyreadmenator/_apidocs_render.pyreadmenator/_docstrings.pyreadmenator/_flowcharts.pyreadmenator/_flowlayout.pyreadmenator/_flowpage.pyreadmenator/_pytypes.pyreadmenator/_symindex.pytests/test_apidocs.pytests/test_flowcharts.pytests/test_symindex.py