Loom C API
Public Loom compiler C API
Loading...
Searching...
No Matches
link_index.h
Go to the documentation of this file.
1// Copyright 2026 The IREE Authors
2//
3// Licensed under the Apache License v2.0 with LLVM Exceptions.
4// See https://llvm.org/LICENSE.txt for license information.
5// SPDX-License-Identifier: Apache-2.0 WITH LLVM-exception
6
7#ifndef LOOMC_LINK_INDEX_H_
8#define LOOMC_LINK_INDEX_H_
9
10#include "loomc/config.h"
11#include "loomc/context.h"
12#include "loomc/module.h"
13#include "loomc/result.h"
14
53
54#ifdef __cplusplus
55extern "C" {
56#endif
57
66
73
82
97
106
133
160
163
184
193
207
232
257
291
305 loomc_allocator_t allocator, loomc_link_index_builder_t** out_builder);
306
315
329
343 loomc_source_t* source);
344
356
379 const loomc_module_t* module);
380
389 loomc_link_index_builder_t* builder, const loomc_module_t* module,
392
414 loomc_link_index_builder_t* builder, loomc_link_index_t** out_link_index,
415 loomc_result_t** out_result);
416
425
434
441
449 const loomc_link_index_t* link_index, loomc_host_size_t ordinal,
450 loomc_link_index_provider_t* out_provider);
451
458
466 const loomc_link_index_t* link_index, loomc_host_size_t ordinal,
467 loomc_link_index_module_t* out_module);
468
475
483 const loomc_link_index_t* link_index, loomc_host_size_t ordinal,
484 loomc_link_index_symbol_t* out_symbol);
485
497 const loomc_link_index_t* link_index, loomc_string_view_t name,
498 loomc_link_index_symbol_t* out_symbol);
499
511 const loomc_link_index_t* link_index,
512 const loomc_link_index_symbol_t* symbol,
513 loomc_link_index_symbol_t* out_symbol);
514
523 const loomc_link_index_t* link_index,
525 loomc_link_index_symbol_t* out_symbol);
526
527#ifdef __cplusplus
528} // extern "C"
529#endif
530
531#endif // LOOMC_LINK_INDEX_H_
#define LOOMC_API_EXPORT
Exports a public Loom C API symbol from a shared library build.
Definition base.h:34
size_t loomc_host_size_t
Host allocation and container size type.
Definition base.h:45
loomc_structure_type_t
Structure type values used by extensible public descriptors.
Definition base.h:181
struct iree_status_handle_t * loomc_status_t
Opaque status handle.
Definition base.h:55
Text and JSON configuration bindings.
Reusable Loom API context.
struct loomc_context_t loomc_context_t
Immutable Loom API context.
Definition context.h:63
Opaque in-memory Loom modules.
struct loomc_module_t loomc_module_t
Opaque parsed, linked, optimized, or lowered module.
Definition module.h:90
Shared operation result container.
struct loomc_result_t loomc_result_t
Immutable operation result.
Definition result.h:71
struct loomc_source_t loomc_source_t
Immutable source handle.
Definition source.h:81
Host allocator used for persistent Loom object storage.
Definition base.h:414
Non-owning string view over bytes that need not be NUL-terminated.
Definition base.h:63