pub struct Program {
pub ops: Vec<Op>,
}Expand description
A bounded, ordered list of reconstruction instructions.
Fields§
§ops: Vec<Op>Instructions, evaluated in order.
Implementations§
Source§impl Program
impl Program
Sourcepub fn analyze(
&self,
object_lens: &[u64],
channel_lens: &[u64],
limits: Limits,
) -> Result<(u64, CoverageMap)>
pub fn analyze( &self, object_lens: &[u64], channel_lens: &[u64], limits: Limits, ) -> Result<(u64, CoverageMap)>
Walk the program, validating instruction semantics and returning both the predicted output length and the coverage certificate, using only object and channel lengths (no byte materialization, no large allocation).
Sourcepub fn analyze_inputs(
&self,
objects: &[Vec<u8>],
channels: &[Vec<u8>],
limits: Limits,
) -> Result<(u64, CoverageMap)>
pub fn analyze_inputs( &self, objects: &[Vec<u8>], channels: &[Vec<u8>], limits: Limits, ) -> Result<(u64, CoverageMap)>
Analyze using concrete object and channel tables.
Sourcepub fn analyze_objects(
&self,
objects: &[Vec<u8>],
limits: Limits,
) -> Result<(u64, CoverageMap)>
pub fn analyze_objects( &self, objects: &[Vec<u8>], limits: Limits, ) -> Result<(u64, CoverageMap)>
Convenience wrapper over Program::analyze for a program with no
entropy channels.
Trait Implementations§
impl Eq for Program
impl StructuralPartialEq for Program
Auto Trait Implementations§
impl Freeze for Program
impl RefUnwindSafe for Program
impl Send for Program
impl Sync for Program
impl Unpin for Program
impl UnsafeUnpin for Program
impl UnwindSafe for Program
Blanket Implementations§
Source§impl<T> BorrowMut<T> for Twhere
T: ?Sized,
impl<T> BorrowMut<T> for Twhere
T: ?Sized,
Source§fn borrow_mut(&mut self) -> &mut T
fn borrow_mut(&mut self) -> &mut T
Mutably borrows from an owned value. Read more