|
Loom C API
Public Loom compiler C API
|
Link invocation options. More...
#include <link.h>
Data Fields | |
| loomc_structure_type_t | type |
| Structure type. Must be LOOMC_STRUCTURE_TYPE_LINK_OPTIONS when nonzero. | |
| loomc_host_size_t | structure_size |
| Size of this structure in bytes. | |
| const void * | next |
| Extension chain for future link invocation options. | |
| loomc_link_index_t * | link_index |
| Frozen provider index to link. | |
| loomc_string_view_t | module_name |
| Output module name for this invocation. Empty uses the linker's default. | |
| const loomc_string_view_t * | root_symbols |
| Root symbol names for selective linking. | |
| loomc_host_size_t | root_symbol_count |
| Number of entries in root_symbols. | |
| loomc_link_flags_t | flags |
| Link operation flags. | |
| loomc_config_options_t | config |
| Per-invocation config bindings materialized into the linked output module. | |
Link invocation options.
A link invocation consumes a frozen index and returns either a retained module or a failed result with diagnostics. Supplying roots or LOOMC_LINK_FLAG_INCLUDE_EXPORTED_ROOTS selects a dependency closure. Supplying neither performs archive-style linking and materializes all linkable symbols in stable index order. Linking preserves every target carried by the selected symbols. Config options materialize on the linked output for this invocation; frozen indexes and reusable input/library modules are never mutated by link-time config.
| const loomc_string_view_t* loomc_link_options_t::root_symbols |
Root symbol names for selective linking.
Function-like roots are retained as module-boundary entries in the linked output.