pub struct Ops {
pub name: Option<String>,
pub name_was_lossy: bool,
pub start_line: usize,
pub end_line: usize,
pub kind: SpaceKind,
pub spaces: Vec<Ops>,
pub operands: Vec<String>,
pub operators: Vec<String>,
}Expand description
All operands and operators of a space.
Fields§
§name: Option<String>The name of a function space.
For the top-level (file-level) Ops, this is the file path
supplied to [operands_and_operators] converted via lossy UTF-8
conversion, so it is always Some. Non-UTF-8 path components on
Linux (or invalid UTF-16 on Windows) become U+FFFD replacement
characters; in that case Ops::name_was_lossy is true and
downstream consumers must treat the name as display-only — never
as a map key or for error correlation.
For nested spaces, None means an error occurred in parsing the
name of the function space from the AST.
name_was_lossy: booltrue when Ops::name was produced by lossy conversion (the
original path contained non-UTF-8 bytes and was rendered using
U+FFFD replacement characters). Always false for nested spaces
and for top-level spaces with valid-UTF-8 paths. Skipped from
JSON output when false so existing schemas keep their shape.
start_line: usizeThe first line of a function space.
end_line: usizeThe last line of a function space.
kind: SpaceKindThe space kind.
spaces: Vec<Ops>All subspaces contained in a function space.
operands: Vec<String>All operands of a space.
operators: Vec<String>All operators of a space.