pub enum ScriptError {
Show 22 variants
InvalidScript(String),
InvalidOpcode(u8),
InvalidOpcodeData,
InvalidOpcodeType(String),
InvalidAddress(String),
InvalidAddressLength(String),
UnsupportedAddress(String),
ScriptTooLarge(usize),
InvalidHex(String),
HexDecode(FromHexError),
EmptyScript,
NotP2PKH,
DataTooSmall,
DataTooBig,
PartTooBig(usize),
IndexOutOfRange,
EncodingBadChar,
EncodingTooLong,
EncodingInvalidVersion,
EncodingChecksumFailed,
InterpreterError(String),
Primitives(PrimitivesError),
}Expand description
Error types for script operations.
Covers parsing errors, encoding/decoding failures, address validation, and script classification problems.
Variants§
InvalidScript(String)
Generic invalid script error.
InvalidOpcode(u8)
An unrecognized or invalid opcode was encountered.
InvalidOpcodeData
Invalid opcode data encountered during ASM parsing.
InvalidOpcodeType(String)
Attempted to use AppendOpcodes for a push data opcode.
InvalidAddress(String)
Invalid address string.
InvalidAddressLength(String)
Invalid address length after Base58 decoding.
UnsupportedAddress(String)
Address type not supported (not P2PKH mainnet/testnet).
ScriptTooLarge(usize)
Script too large.
InvalidHex(String)
Invalid hex string.
HexDecode(FromHexError)
Hex decoding error.
EmptyScript
Script is empty when a non-empty script was expected.
NotP2PKH
Script is not a P2PKH script.
DataTooSmall
Not enough data in script to complete a push operation.
DataTooBig
Push data exceeds maximum allowed size.
PartTooBig(usize)
A push data part exceeds protocol limits.
IndexOutOfRange
Script index is out of range.
EncodingBadChar
Bad character in Base58 encoding.
EncodingTooLong
Encoded value is too long for the target type.
EncodingInvalidVersion
Address version byte is not recognized (not 0x00 or 0x6f).
EncodingChecksumFailed
Base58Check checksum does not match.
InterpreterError(String)
Interpreter error.
Primitives(PrimitivesError)
Error from primitives crate.
Trait Implementations§
Source§impl Debug for ScriptError
impl Debug for ScriptError
Source§impl Display for ScriptError
impl Display for ScriptError
Source§impl Error for ScriptError
impl Error for ScriptError
Source§fn source(&self) -> Option<&(dyn Error + 'static)>
fn source(&self) -> Option<&(dyn Error + 'static)>
1.0.0 · Source§fn description(&self) -> &str
fn description(&self) -> &str
use the Display impl or to_string()