Loom C API
Public Loom compiler C API
Loading...
Searching...
No Matches
artifact_manifest.h File Reference

Artifact manifest emission controls. More...

Go to the source code of this file.

Data Structures

struct  loomc_artifact_manifest_options_t
 Artifact manifest emission options. More...

Macros

#define LOOMC_ARTIFACT_FORMAT_ARTIFACT_MANIFEST_JSON   "loom-artifact-manifest-json"
 Loom artifact manifest JSON report artifact format.

Enumerations

enum  loomc_artifact_manifest_mode_t { LOOMC_ARTIFACT_MANIFEST_MODE_NONE = 0 , LOOMC_ARTIFACT_MANIFEST_MODE_SUMMARY = 1 , LOOMC_ARTIFACT_MANIFEST_MODE_DETAILS = 2 , LOOMC_ARTIFACT_MANIFEST_MODE_ANALYSIS = 3 }
 Artifact manifest detail mode. More...

Functions

loomc_status_t loomc_artifact_manifest_mode_parse (loomc_string_view_t value, loomc_artifact_manifest_mode_t *out_mode)
 Parses a stable artifact manifest mode spelling.
loomc_string_view_t loomc_artifact_manifest_mode_name (loomc_artifact_manifest_mode_t mode)
 Returns the stable JSON/CLI spelling for mode.

Detailed Description

Artifact manifest emission controls.

Artifact manifests are optional machine-readable sidecars for emitted target artifacts. They describe the emitted artifact bytes, exported functions, exported globals, target facts, and launch/call interface facts available at the selected verbosity.

Manifest generation is opt-in. Omitting this descriptor, or setting mode to LOOMC_ARTIFACT_MANIFEST_MODE_NONE, keeps emission on the normal artifact-only path.

Enumeration Type Documentation

◆ loomc_artifact_manifest_mode_t

Artifact manifest detail mode.

Enumerator
LOOMC_ARTIFACT_MANIFEST_MODE_NONE 

Does not request an artifact manifest.

LOOMC_ARTIFACT_MANIFEST_MODE_SUMMARY 

Requests stable artifact, target, function, global, and summary ABI facts.

LOOMC_ARTIFACT_MANIFEST_MODE_DETAILS 

Requests summary facts plus detail arrays such as function parameters.

LOOMC_ARTIFACT_MANIFEST_MODE_ANALYSIS 

Requests artifact-bound analysis facts when available.

Function Documentation

◆ loomc_artifact_manifest_mode_name()

loomc_string_view_t loomc_artifact_manifest_mode_name ( loomc_artifact_manifest_mode_t mode)

Returns the stable JSON/CLI spelling for mode.

Parameters
modeMode to name. Unrecognized values use the "none" spelling.
Returns
Borrowed static string view containing the stable spelling.

◆ loomc_artifact_manifest_mode_parse()

loomc_status_t loomc_artifact_manifest_mode_parse ( loomc_string_view_t value,
loomc_artifact_manifest_mode_t * out_mode )

Parses a stable artifact manifest mode spelling.

Accepts "", "none", "summary", "details", or "analysis".

Parameters
valueMode spelling to parse. The view need not be NUL-terminated.
out_modeReceives the parsed mode on success.
Returns
OK when value is recognized. Invalid argument is returned when out_mode is NULL, the view is malformed, or the spelling is unsupported.