|
Loom C API
Public Loom compiler C API
|
Strict direct-dependency analysis over frozen link indexes. More...
Go to the source code of this file.
Data Structures | |
| struct | loomc_link_dependency_analysis_options_t |
| Strict dependency analysis options. More... | |
Macros | |
| #define | LOOMC_ARTIFACT_FORMAT_LINK_DEPENDENCY_REPORT_JSON "loom-link-dependency-report-json" |
| Loom link dependency report JSON artifact format. | |
Typedefs | |
| typedef uint32_t | loomc_link_dependency_artifact_flags_t |
| Bitmask of loomc_link_dependency_artifact_flag_bits_t values. | |
Enumerations | |
| enum | loomc_link_dependency_artifact_flag_bits_t { LOOMC_LINK_DEPENDENCY_ARTIFACT_FLAG_REPORT_JSON = 1u << 0 } |
| Dependency-analysis artifact flag bit values. More... | |
Functions | |
| loomc_status_t | loomc_link_analyze_dependencies (const loomc_link_index_t *link_index, loomc_workspace_t *workspace, const loomc_link_dependency_analysis_options_t *options, loomc_result_t **out_result) |
| Analyzes strict direct dependencies over a frozen link index. | |
Strict direct-dependency analysis over frozen link indexes.
Dependency analysis checks the authored boundary of the INPUT providers in a link index. Exact symbol requirements must be owned by those inputs or exported by a declared direct LIBRARY provider. Other library providers remain visible as the transitive audit universe so diagnostics can distinguish a missing direct dependency from an unsatisfied requirement.
Analysis is metadata-only. It does not materialize function bodies, select roots, specialize templates, alter link resolution, or write files. Open template families remain valid when no provider is available so relocatable modules can be specialized against a target library in a later link.
| loomc_status_t loomc_link_analyze_dependencies | ( | const loomc_link_index_t * | link_index, |
| loomc_workspace_t * | workspace, | ||
| const loomc_link_dependency_analysis_options_t * | options, | ||
| loomc_result_t ** | out_result ) |
Analyzes strict direct dependencies over a frozen link index.
| link_index | Frozen index containing INPUT providers being analyzed, declared direct LIBRARY providers, and any transitive library audit universe. |
| workspace | Invocation-local scratch workspace. |
| options | Analysis options, or NULL for no direct dependencies and no report artifact. |
| out_result | Receives a retained result for the completed analysis. |