Package-level declarations
Types
Result of buildDemangledToMangledMap including the lookup map and any detected ambiguities where multiple mangled symbols share the same demangled name.
Runtime cross-check that every LLVM binary in StigLlvmToolchain is present on PATH and reports the expected LLVM_MAJOR.
Keeps one consumer checkout's analysis outputs stable across independent Gradle invocations.
Limits concurrent native analyzer processes across activity projects in one Gradle build.
Build-scoped exclusive-access coordinator for tasks that invoke Bazel or read files through its shared execroot. Despite the BuildService superclass name (a Gradle term, not a runtime daemon), this is one object for the duration of a Gradle build. It serves two roles:
Limits active Dokka generators across projects; each generator may use multiple JVM threads.
Serializes loading and wiring of compiled-model sessions within a Gradle build.
Central icon assignment for every executable Highway metamodel object.
Model-tree anchors shared by Dokka rendering and finding navigation.
Shared resolution and HTML rendering for source actions in Dokka model and report content.
Build-time round-trip check: every StigSpriteIcon entry must resolve to a <symbol id="..."> in the vendored stig-icons.svg. The vendored sprite is generated from pinned Iconify JSON packages by StigIconSpriteGenerator; if the Kotlin side adds an enum value but no one regenerates the sprite, every diagram using that icon would render an empty box. This validator catches the divergence at task-action time instead.
Functions
Builds a reverse lookup map from demangled C++ names to mangled LLVM symbols.
Strips the return type prefix from a demangled C++ function name. e.g. "RetType* ns::Func<T>(Params)" → "ns::Func<T>(Params)".
Runs <tool> --version, parses the first line for an LLVM major- version number (e.g. clang version 18.1.8 → "18"), and throws if the parsed major differs from expectedMajor. The defence-in- depth complement to StigLlvmToolchain: even when every task uses the registry, a misconfigured PATH (clang++-18 symlink pointing at clang-22's binary, version-suffix-stripped install, etc.) can let the wrong major sneak in. This function catches that at task- configuration / pre-exec time, before the offending binary actually produces bitcode.
Adapts Gradle process/logging services to the shared symbol-verification engine.
Writes a key-value marker file from a map.
Writes a key-value marker file for Gradle up-to-date checks.