Documentation
¶
Overview ¶
Package ninjago is the top-level library entry point for the ninjago CLI: it parses flags, sets up signals and the runtime context, and dispatches the requested subcommand against the supplied backend.
Index ¶
Constants ¶
This section is empty.
Variables ¶
This section is empty.
Functions ¶
Types ¶
This section is empty.
Directories
¶
| Path | Synopsis |
|---|---|
|
Package backends defines the umbrella Backend interface that ties together the per-stage backend interfaces (subcommands, parse, graph, build) into the single contract a ninjago binary must satisfy.
|
Package backends defines the umbrella Backend interface that ties together the per-stage backend interfaces (subcommands, parse, graph, build) into the single contract a ninjago binary must satisfy. |
|
classic
Package classic implements a ninjago backend that mirrors the on-disk semantics of the upstream ninja binary, including its .ninja_log and .ninja_deps files and local-only command execution.
|
Package classic implements a ninjago backend that mirrors the on-disk semantics of the upstream ninja binary, including its .ninja_log and .ninja_deps files and local-only command execution. |
|
Package build schedules and executes the build steps in a Ninja graph, tracking per-step state and delegating command execution and on-disk effects to a pluggable BuildBackend.
|
Package build schedules and executes the build steps in a Ninja graph, tracking per-step state and delegating command execution and on-disk effects to a pluggable BuildBackend. |
|
Command ninjago is the standalone ninjago CLI binary, wiring the classic backend into the shared ninjago.Main entry point.
|
Command ninjago is the standalone ninjago CLI binary, wiring the classic backend into the shared ninjago.Main entry point. |
|
Package graph builds and represents the dependency graph derived from parsed ninja files, resolving targets, inputs, and discovered dependencies into the nodes the build engine schedules over.
|
Package graph builds and represents the dependency graph derived from parsed ninja files, resolving targets, inputs, and discovered dependencies into the nodes the build engine schedules over. |
|
Package ninja models the ninja build language: parsed files with their pools, rules, builds, defaults, and key/value bindings, along with the scopes used to expand variables.
|
Package ninja models the ninja build language: parsed files with their pools, rules, builds, defaults, and key/value bindings, along with the scopes used to expand variables. |
|
ninjafiles
|
|
|
ninjadeps
Package ninjadeps reads and writes the .ninja_deps log, the binary per-target dependency database that ninja uses to remember discovered header dependencies between builds.
|
Package ninjadeps reads and writes the .ninja_deps log, the binary per-target dependency database that ninja uses to remember discovered header dependencies between builds. |
|
ninjalog
Package ninjalog reads and writes the .ninja_log file that records the command hash and timing for each previously built target so ninja can detect dirty steps on the next build.
|
Package ninjalog reads and writes the .ninja_log file that records the command hash and timing for each previously built target so ninja can detect dirty steps on the next build. |
|
Package parse parses ninja build files and depfiles into the data structures consumed by the rest of ninjago, and defines the ParseBackend hook used to source file contents and observe the parsed result.
|
Package parse parses ninja build files and depfiles into the data structures consumed by the rest of ninjago, and defines the ParseBackend hook used to source file contents and observe the parsed result. |
|
Package runtime provides the CLI-facing runtime support shared across ninjago commands: flag and argument parsing, logging, console and status rendering, memory-mapped file I/O, and the RunParameters bag that ties them together.
|
Package runtime provides the CLI-facing runtime support shared across ninjago commands: flag and argument parsing, logging, console and status rendering, memory-mapped file I/O, and the RunParameters bag that ties them together. |
|
Package subcommands implements the ninjago subcommands invoked via -t (build, graph, list, path, query, and friends), along with the shared argument plumbing and CommandSpec registry that dispatches to them.
|
Package subcommands implements the ninjago subcommands invoked via -t (build, graph, list, path, query, and friends), along with the shared argument plumbing and CommandSpec registry that dispatches to them. |
|
third_party
|
|
|
siso/frontend
Package frontend serializes build status updates over the Android ninja frontend protocol so that Soong (or another consumer reading the frontend FIFO) can render its own UI.
|
Package frontend serializes build status updates over the Android ninja frontend protocol so that Soong (or another consumer reading the frontend FIFO) can render its own UI. |
|
siso/frontend/proto
Package proto provides protocol buffer message for soong integration.
|
Package proto provides protocol buffer message for soong integration. |
|
Package xxmap provides a concurrent string-keyed map sharded by xxhash, trading a fixed amount of memory for reduced contention compared to a single sync.Map under highly parallel access.
|
Package xxmap provides a concurrent string-keyed map sharded by xxhash, trading a fixed amount of memory for reduced contention compared to a single sync.Map under highly parallel access. |
Click to show internal directories.
Click to hide internal directories.