pub struct Analyze {
pub unit: UnitRef,
pub compile_command: Option<CompileCommandSelector>,
pub read_boundary: Option<String>,
pub want: Vec<Capability>,
pub permitted: Vec<Execution>,
}Expand description
One unit to analyze, and what is wanted from it.
Fields§
§unit: UnitRefWhich unit.
compile_command: Option<CompileCommandSelector>The exact compilation-database entry to use for a C or C++ request.
A source path is not enough: a database may intentionally list it more
than once under different -D settings. This carries the complete
recorded command identity rather than a database index, because an
index changes when an unrelated command is inserted or reordered.
read_boundary: Option<String>Canonical scan-root boundary for paths a compilation command may read.
Set only for an untrusted scan. Helpers must refuse path-bearing compiler arguments that resolve outside this directory; omitting it preserves the configured, trusted compilation-database behaviour.
want: Vec<Capability>What to spend time on.
Never more than the helper offered at handshake. Asking for less than it can do is how a run that needs only types avoids paying for a control-flow graph nobody will read.
permitted: Vec<Execution>What the helper may run out of the project while answering.
Empty unless somebody said otherwise.