Skip to main content

Crate codehelion_artifact

Crate codehelion_artifact 

Source
Expand description

Format-neutral artifact parsing boundary and intermediate representation.

This crate owns no source-analysis dependency. Format backends turn bytes into ArtifactIr; common metrics can then operate on that IR without knowing whether it came from WebAssembly, ELF, or a later format.

Each format backend sits behind a feature of the same name, so a caller that reads one format does not build the parsers for the others. The archive feature turns on the four backends it delegates members to.

Modules§

archive
Static archive implementation of the codehelion artifact backend boundary.
base64_bytes
JSON uses base64 strings for opaque artifact payloads rather than one number per byte, while binary serde formats retain their usual byte form. Serde adapter for base64-encoded artifact byte payloads.
dwarf
Format-neutral DWARF source-location extraction for artifact backends.
elf
ELF implementation of the codehelion artifact backend boundary.
macho
Mach-O implementation of the codehelion artifact backend boundary.
metrics
Format-neutral duplicate grouping over ArtifactIr.
native
Shared native-object collection helpers.
pe
PE and COFF implementation of the codehelion artifact backend boundary.
symbols
Shared symbol-name presentation helpers for artifact backends.
wasm
WebAssembly implementation of the codehelion artifact backend boundary.
x86
Shared x86 instruction-shape normalization for native artifact backends.

Structs§

ArtifactArchiveMember
One object member observed inside a static archive.
ArtifactCall
One relation from a caller to a direct target or an unresolved dispatch.
ArtifactCapabilities
Information a format backend could establish without guessing.
ArtifactDataSegment
A data region eligible for exact duplicate analysis.
ArtifactFingerprint
The stable content fingerprint of an artifact or entity inside one.
ArtifactImport
A dependency the artifact declares without requiring it to be loaded.
ArtifactInlineFrame
One source frame associated with an inlined artifact symbol.
ArtifactIr
One parsed artifact, independent of the container that supplied it.
ArtifactRelocation
A relocation anchor retained as parsed evidence rather than a stable ID.
ArtifactSection
One named or numbered region of an artifact.
ArtifactSourceMapping
A source-map reference declared by an artifact.
ArtifactSymbol
A function or symbol extracted from an artifact.
NormalizedInstructions
A versioned representation used for normalized duplicate detection.

Enums§

ArtifactError
A parser failure that preserves the source artifact and never executes it.
ArtifactFormat
A binary container format that codehelion recognises.
ArtifactImportKind
Kind of an ArtifactImport.
ArtifactSourceLocationEvidenceKind
Debug metadata family that established one artifact source location.
UnresolvedCall
A conservative reason a call edge has no direct target.

Constants§

ARTIFACT_FINGERPRINT_VERSION
Version of the fingerprint recipe for parsed artifact entities.
ARTIFACT_IR_SCHEMA_VERSION
Version of the artifact IR document.

Traits§

ArtifactBackend
Format-specific parser isolated behind a common Artifact IR boundary.

Functions§

detect_format
Recognise supported and planned artifact formats from their magic bytes.