pub struct FunctionContext {Show 17 fields
pub name: String,
pub entry_point: String,
pub signature: String,
pub calling_convention: String,
pub is_thunk: bool,
pub thunked_to: Option<String>,
pub c: String,
pub c_truncated: bool,
pub callers: Vec<CallEdge>,
pub callees: Vec<CallEdge>,
pub data_refs: Vec<DataRef>,
pub data_refs_truncated: bool,
pub comments: Vec<CommentEntry>,
pub comments_truncated: bool,
pub prototype: Option<Prototype>,
pub locals: Option<Vec<LocalEntry>>,
pub locals_truncated: Option<bool>,
}Expand description
The result of inspect_function (spec §3.3). c is capped from the top by max_c_lines
(signature + decls always intact — spec §3.4); c_truncated signals the body was longer.
Fields§
§name: String§entry_point: String§signature: String§calling_convention: String§is_thunk: bool§thunked_to: Option<String>Address when is_thunk, else null.
c: String§c_truncated: bool§callers: Vec<CallEdge>§callees: Vec<CallEdge>§data_refs: Vec<DataRef>§data_refs_truncated: bool§comments: Vec<CommentEntry>§comments_truncated: bool§prototype: Option<Prototype>Structured current signature (M2c Task 0.2). Option + serde(default) so an older worker’s
FunctionContext (no prototype) still deserializes (panel R3-Seat3, matches the M2b
serde-default-on-Option lesson). The flat signature string above remains for the human form
and the expected_signature CAS value.
locals: Option<Vec<LocalEntry>>Structured decompiler-visible locals (M2d). Option + serde(default) so an older worker’s
FunctionContext (no locals) still deserializes, mirroring prototype. Excludes parameters
(those live in prototype). Bounded (~100); locals_truncated flags the cap was hit.
locals_truncated: Option<bool>Trait Implementations§
Source§impl Clone for FunctionContext
impl Clone for FunctionContext
Source§fn clone(&self) -> FunctionContext
fn clone(&self) -> FunctionContext
1.0.0 (const: unstable) · Source§fn clone_from(&mut self, source: &Self)
fn clone_from(&mut self, source: &Self)
source. Read more