Loom C API
Public Loom compiler C API
Toggle main menu visibility
Loading...
Searching...
No Matches
config.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_CONFIG_H_
8
#define LOOMC_CONFIG_H_
9
10
#include "
loomc/base.h
"
11
41
42
#ifdef __cplusplus
43
extern
"C"
{
44
#endif
45
51
typedef
struct
loomc_config_binding_t
{
53
loomc_string_view_t
key
;
54
56
loomc_string_view_t
value
;
57
}
loomc_config_binding_t
;
58
60
typedef
enum
loomc_config_policy_flag_bits_e {
62
LOOMC_CONFIG_POLICY_FLAG_REQUIRE_RESOLVED
= 1u << 0,
63
}
loomc_config_policy_flag_bits_t
;
64
66
typedef
uint32_t
loomc_config_policy_flags_t
;
67
77
typedef
struct
loomc_config_options_t
{
79
const
loomc_config_binding_t
*
bindings
;
80
82
loomc_host_size_t
binding_count
;
83
85
loomc_string_view_t
json_object
;
86
88
loomc_config_policy_flags_t
flags
;
89
}
loomc_config_options_t
;
90
91
#ifdef __cplusplus
92
}
// extern "C"
93
#endif
94
95
#endif
// LOOMC_CONFIG_H_
base.h
Base types, descriptors, spans, and host allocation helpers.
loomc_host_size_t
size_t loomc_host_size_t
Host allocation and container size type.
Definition
base.h:45
loomc_config_policy_flag_bits_t
loomc_config_policy_flag_bits_t
Configuration validation and resolution policy bit values.
Definition
config.h:60
LOOMC_CONFIG_POLICY_FLAG_REQUIRE_RESOLVED
@ LOOMC_CONFIG_POLICY_FLAG_REQUIRE_RESOLVED
Require all final operation config values to be resolved.
Definition
config.h:62
loomc_config_policy_flags_t
uint32_t loomc_config_policy_flags_t
Bitmask of loomc_config_policy_flag_bits_t values.
Definition
config.h:66
loomc_config_binding_t
Single configuration key/value binding.
Definition
config.h:51
loomc_config_binding_t::key
loomc_string_view_t key
Config key, with a leading @ accepted by normalization.
Definition
config.h:53
loomc_config_binding_t::value
loomc_string_view_t value
Config value spelling.
Definition
config.h:56
loomc_config_options_t
Text configuration options attached to a link or command-product operation.
Definition
config.h:77
loomc_config_options_t::json_object
loomc_string_view_t json_object
Optional JSON/JSONC object string normalized into the same binding set.
Definition
config.h:85
loomc_config_options_t::bindings
const loomc_config_binding_t * bindings
Plain key/value bindings.
Definition
config.h:79
loomc_config_options_t::flags
loomc_config_policy_flags_t flags
Config validation and resolution policy flags.
Definition
config.h:88
loomc_config_options_t::binding_count
loomc_host_size_t binding_count
Number of entries in bindings.
Definition
config.h:82
loomc_string_view_t
Non-owning string view over bytes that need not be NUL-terminated.
Definition
base.h:63
loomc
config.h
Generated by
1.17.0