MCPcopy Create free account
hub / github.com/caverav/flutterdec / ProgramModel

Class ProgramModel

crates/flutterdec-adapter/src/lib.rs:61–71  ·  view source on GitHub ↗

Source from the content-addressed store, hash-verified

59
60/// Hardware layout of the Dart `ObjectPool` object that `x27`/PP points at.
61///
62/// Presence of this record is the adapter's assertion that `ObjectPoolEntry::index`
63/// values live in the *hardware* index space, i.e. that a `ldr xN, [x27, #disp]`
64/// resolves to `(disp - entries_offset) / word_size`. Adapters that only carve
65/// strings out of the snapshot must leave it unset; without it the core refuses to
66/// map pool references onto values instead of guessing.
67#[derive(Debug, Clone, Copy, Serialize, Deserialize)]
68pub struct PoolGeometry {
69 /// Byte offset of entry 0 from the PP base (0x10 on ARM64 AOT).
70 pub entries_offset: u64,
71 /// Stride between entries in bytes (8 on ARM64 AOT, even with compressed pointers).
72 pub word_size: u64,
73}
74

Callers

nothing calls this directly

Calls

no outgoing calls

Tested by

no test coverage detected