#[derive(Debug, thiserror::Error, PartialEq, Eq, Copy, Clone)]
pub enum BlockInfoError {
#[error("Failed to parse the L1 blob base fee scalar")]
L1BlobBaseFeeScalar,
#[error("Failed to parse the base fee scalar")]
BaseFeeScalar,
#[error("Failed to parse the EIP-1559 denominator")]
Eip1559Denominator,
#[error("Failed to parse the EIP-1559 elasticity parameter")]
Eip1559Elasticity,
#[error("Failed to parse the Operator fee scalar parameter")]
OperatorFeeScalar,
#[error("Failed to parse the Operator fee constant parameter")]
OperatorFeeConstant,
}
#[derive(Debug, Eq, PartialEq, Clone, thiserror::Error)]
pub enum DecodeError {
#[error("The provided calldata is too short, missing the 4 selector bytes")]
MissingSelector,
#[error("Invalid L1 info transaction selector")]
InvalidSelector,
#[error("Invalid bedrock data length. Expected {0}, got {1}")]
InvalidBedrockLength(usize, usize),
#[error("Invalid ecotone data length. Expected {0}, got {1}")]
InvalidEcotoneLength(usize, usize),
#[error("Invalid isthmus data length. Expected {0}, got {1}")]
InvalidIsthmusLength(usize, usize),
#[error("Invalid interop data length. Expected {0}, got {1}")]
InvalidInteropLength(usize, usize),
}