#[repr(transparent)]pub struct ContractRejectCode(pub i32);Expand description
Reason the executor refused a transaction’s contract attachments (Transaction.contracts_to_deploy) at proposal time. Any of them drops the transaction from the proposal; none is a contract fault. The RV32 codes name which check of the artifact failed, so an author can tell a toolchain/node mismatch from an oversized or corrupt build.
Tuple Fields§
§0: i32Implementations§
Source§impl ContractRejectCode
impl ContractRejectCode
Sourcepub const ContractRejectTooMany: Self
pub const ContractRejectTooMany: Self
The transaction attaches more contracts than the chain’s max_new_contracts_per_tx permits.
Sourcepub const ContractRejectBlobTooLarge: Self
pub const ContractRejectBlobTooLarge: Self
The contract blob exceeds the chain’s max_contract_size_bytes.
Sourcepub const ContractRejectNotDeployable: Self
pub const ContractRejectNotDeployable: Self
The attachment is not an RV32 contract. Native contracts are registered at genesis; RV32 is the only deployable type.
Sourcepub const ContractRejectDuplicate: Self
pub const ContractRejectDuplicate: Self
The same contract is attached more than once.
Sourcepub const ContractRejectMalformedArtifact: Self
pub const ContractRejectMalformedArtifact: Self
The blob is not a readable RV32 artifact: too short, wrong magic, wrong header size, or its length disagrees with the section sizes the header declares.
Sourcepub const ContractRejectUnsupportedFormat: Self
pub const ContractRejectUnsupportedFormat: Self
The artifact’s format version is not the one this node reads.
Sourcepub const ContractRejectUnsupportedAbi: Self
pub const ContractRejectUnsupportedAbi: Self
The artifact’s VM profile, flags, entry ABI, or syscall ABI is not one this node runs.
Sourcepub const ContractRejectGasScheduleMismatch: Self
pub const ContractRejectGasScheduleMismatch: Self
The gas schedule (version, digest) stamped into the artifact is not one the node accepts: the artifact was lowered by a toolchain whose gas schedule differs from the node’s.
Sourcepub const ContractRejectMemoryTooLarge: Self
pub const ContractRejectMemoryTooLarge: Self
The declared guest memory exceeds the chain’s max_rv32_memory_bytes.
Sourcepub const ContractRejectCodeSizeInvalid: Self
pub const ContractRejectCodeSizeInvalid: Self
The code section is empty or exceeds the chain’s max_rv32_code_bytes.
Sourcepub const ContractRejectInitialMemoryInvalid: Self
pub const ContractRejectInitialMemoryInvalid: Self
The initial memory image does not fit in the declared guest memory, or an empty image declares a nonzero load address.
Sourcepub const ContractRejectDigestMismatch: Self
pub const ContractRejectDigestMismatch: Self
A section’s bytes do not match the SHA-256 digest the header records.
Sourcepub const ContractRejectInvalidProgram: Self
pub const ContractRejectInvalidProgram: Self
The code does not translate: it contains an unsupported or malformed instruction.
Trait Implementations§
Source§impl Clone for ContractRejectCode
impl Clone for ContractRejectCode
Source§impl ConstMaxSize for ContractRejectCode
impl ConstMaxSize for ContractRejectCode
Source§impl ConstMaxSize for ContractRejectCode
impl ConstMaxSize for ContractRejectCode
impl Copy for ContractRejectCode
Source§impl Debug for ContractRejectCode
impl Debug for ContractRejectCode
Source§impl<'de> Deserialize<'de> for ContractRejectCode
impl<'de> Deserialize<'de> for ContractRejectCode
Source§fn deserialize<__D>(__deserializer: __D) -> Result<Self, __D::Error>where
__D: Deserializer<'de>,
fn deserialize<__D>(__deserializer: __D) -> Result<Self, __D::Error>where
__D: Deserializer<'de>,
Source§impl Display for ContractRejectCode
Available on crate feature std only.
impl Display for ContractRejectCode
std only.impl EncodesAs<ContractRejectCode> for ContractRejectCode
impl Eq for ContractRejectCode
Source§impl From<i32> for ContractRejectCode
impl From<i32> for ContractRejectCode
Source§impl Hash for ContractRejectCode
impl Hash for ContractRejectCode
Source§impl JsonSchema for ContractRejectCode
impl JsonSchema for ContractRejectCode
Source§fn schema_id() -> Cow<'static, str>
fn schema_id() -> Cow<'static, str>
Source§fn json_schema(generator: &mut SchemaGenerator) -> Schema
fn json_schema(generator: &mut SchemaGenerator) -> Schema
Source§fn inline_schema() -> bool
fn inline_schema() -> bool
$ref keyword. Read moreSource§impl Ord for ContractRejectCode
impl Ord for ContractRejectCode
1.21.0 (const: unstable) · Source§fn max(self, other: Self) -> Selfwhere
Self: Sized,
fn max(self, other: Self) -> Selfwhere
Self: Sized,
1.21.0 (const: unstable) · Source§fn min(self, other: Self) -> Selfwhere
Self: Sized,
fn min(self, other: Self) -> Selfwhere
Self: Sized,
Source§impl PartialEq for ContractRejectCode
impl PartialEq for ContractRejectCode
Source§impl PartialOrd for ContractRejectCode
impl PartialOrd for ContractRejectCode
Source§impl<'_r> ReadXDR<'_r> for ContractRejectCode
impl<'_r> ReadXDR<'_r> for ContractRejectCode
Source§fn read_xdr<R: Reader<'_r>>(r: &mut R) -> ReadResult<Self>
fn read_xdr<R: Reader<'_r>>(r: &mut R) -> ReadResult<Self>
Source§fn read_xdr_in_place<'__xdrs_s, R: Reader<'_r>>(
r: &mut R,
__xdrs_slot: Slot<'__xdrs_s, Self>,
) -> ReadResult<Init<'__xdrs_s, Self>>
fn read_xdr_in_place<'__xdrs_s, R: Reader<'_r>>( r: &mut R, __xdrs_slot: Slot<'__xdrs_s, Self>, ) -> ReadResult<Init<'__xdrs_s, Self>>
slot, without first building it
on the stack. Read more