pub struct WitnessProgram<'a>(/* private fields */);Expand description
Parsed witness program view over a scriptPubKey byte slice.
Implementations§
Source§impl<'a> WitnessProgram<'a>
impl<'a> WitnessProgram<'a>
Sourcepub fn parse_program(version: u8, program: &'a [u8]) -> Self
pub fn parse_program(version: u8, program: &'a [u8]) -> Self
Creates a witness program view from an already-parsed version and program.
Sourcepub fn parse(script_bytes: &'a [u8]) -> Option<Self>
pub fn parse(script_bytes: &'a [u8]) -> Option<Self>
Parses a witness program from scriptPubKey bytes.
Sourcepub fn is_v1_512(script_bytes: &'a [u8]) -> bool
pub fn is_v1_512(script_bytes: &'a [u8]) -> bool
Returns whether the script is a Tidecoin witness-v1-512 program.
Sourcepub fn classify(self, flags: u32) -> Result<WitnessProgramClass, ScriptError>
pub fn classify(self, flags: u32) -> Result<WitnessProgramClass, ScriptError>
Classifies the parsed witness program under the provided verification flags.
Sourcepub fn execution_plan(
self,
flags: u32,
witness: &Witness,
) -> Result<WitnessExecutionPlan, ScriptError>
pub fn execution_plan( self, flags: u32, witness: &Witness, ) -> Result<WitnessExecutionPlan, ScriptError>
Builds an execution plan for this witness program and witness stack.
Trait Implementations§
Source§impl<'a> Clone for WitnessProgram<'a>
impl<'a> Clone for WitnessProgram<'a>
Source§fn clone(&self) -> WitnessProgram<'a>
fn clone(&self) -> WitnessProgram<'a>
Returns a duplicate of the value. Read more
1.0.0 · Source§fn clone_from(&mut self, source: &Self)
fn clone_from(&mut self, source: &Self)
Performs copy-assignment from
source. Read moreSource§impl<'a> Debug for WitnessProgram<'a>
impl<'a> Debug for WitnessProgram<'a>
Source§impl<'a> PartialEq for WitnessProgram<'a>
impl<'a> PartialEq for WitnessProgram<'a>
impl<'a> Copy for WitnessProgram<'a>
impl<'a> Eq for WitnessProgram<'a>
impl<'a> StructuralPartialEq for WitnessProgram<'a>
Auto Trait Implementations§
impl<'a> Freeze for WitnessProgram<'a>
impl<'a> RefUnwindSafe for WitnessProgram<'a>
impl<'a> Send for WitnessProgram<'a>
impl<'a> Sync for WitnessProgram<'a>
impl<'a> Unpin for WitnessProgram<'a>
impl<'a> UnsafeUnpin for WitnessProgram<'a>
impl<'a> UnwindSafe for WitnessProgram<'a>
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