pub enum ActionsValidationError {
Show 19 variants
DeleteActionMustBeFinal,
TotalPrepaidGasExceeded {
limit: NearGas,
total_prepaid_gas: NearGas,
},
TotalNumberOfActionsExceeded {
limit: u64,
total_number_of_actions: u64,
},
AddKeyMethodNamesNumberOfBytesExceeded {
limit: u64,
total_number_of_bytes: u64,
},
AddKeyMethodNameLengthExceeded {
length: u64,
limit: u64,
},
IntegerOverflow,
InvalidAccountId {
account_id: String,
},
ContractSizeExceeded {
limit: u64,
size: u64,
},
FunctionCallMethodNameLengthExceeded {
length: u64,
limit: u64,
},
FunctionCallArgumentsLengthExceeded {
length: u64,
limit: u64,
},
UnsuitableStakingKey {
public_key: PublicKey,
},
FunctionCallZeroAttachedGas,
DelegateActionMustBeOnlyOne,
UnsupportedProtocolFeature {
protocol_feature: String,
version: u32,
},
InvalidDeterministicStateInitReceiver {
derived_id: AccountId,
receiver_id: AccountId,
},
DeterministicStateInitKeyLengthExceeded {
length: u64,
limit: u64,
},
DeterministicStateInitValueLengthExceeded {
length: u64,
limit: u64,
},
GasKeyPermissionInvalid {
permission: AccessKeyPermission,
},
GasKeyTooManyNoncesRequested {
limit: u32,
requested_nonces: u32,
},
}Expand description
Describes the error for validating a list of actions.
JSON schema
{
"description": "Describes the error for validating a list of actions.",
"oneOf": [
{
"description": "The delete action must be a final action in transaction",
"type": "string",
"enum": [
"DeleteActionMustBeFinal"
]
},
{
"description": "The total prepaid gas (for all given actions) exceeded the limit.",
"type": "object",
"required": [
"TotalPrepaidGasExceeded"
],
"properties": {
"TotalPrepaidGasExceeded": {
"type": "object",
"required": [
"limit",
"total_prepaid_gas"
],
"properties": {
"limit": {
"$ref": "#/components/schemas/NearGas"
},
"total_prepaid_gas": {
"$ref": "#/components/schemas/NearGas"
}
}
}
},
"additionalProperties": false
},
{
"description": "The number of actions exceeded the given limit.",
"type": "object",
"required": [
"TotalNumberOfActionsExceeded"
],
"properties": {
"TotalNumberOfActionsExceeded": {
"type": "object",
"required": [
"limit",
"total_number_of_actions"
],
"properties": {
"limit": {
"type": "integer",
"format": "uint64",
"minimum": 0.0
},
"total_number_of_actions": {
"type": "integer",
"format": "uint64",
"minimum": 0.0
}
}
}
},
"additionalProperties": false
},
{
"description": "The total number of bytes of the method names exceeded the limit in a Add Key action.",
"type": "object",
"required": [
"AddKeyMethodNamesNumberOfBytesExceeded"
],
"properties": {
"AddKeyMethodNamesNumberOfBytesExceeded": {
"type": "object",
"required": [
"limit",
"total_number_of_bytes"
],
"properties": {
"limit": {
"type": "integer",
"format": "uint64",
"minimum": 0.0
},
"total_number_of_bytes": {
"type": "integer",
"format": "uint64",
"minimum": 0.0
}
}
}
},
"additionalProperties": false
},
{
"description": "The length of some method name exceeded the limit in a Add Key action.",
"type": "object",
"required": [
"AddKeyMethodNameLengthExceeded"
],
"properties": {
"AddKeyMethodNameLengthExceeded": {
"type": "object",
"required": [
"length",
"limit"
],
"properties": {
"length": {
"type": "integer",
"format": "uint64",
"minimum": 0.0
},
"limit": {
"type": "integer",
"format": "uint64",
"minimum": 0.0
}
}
}
},
"additionalProperties": false
},
{
"description": "Integer overflow during a compute.",
"type": "string",
"enum": [
"IntegerOverflow"
]
},
{
"description": "Invalid account ID.",
"type": "object",
"required": [
"InvalidAccountId"
],
"properties": {
"InvalidAccountId": {
"type": "object",
"required": [
"account_id"
],
"properties": {
"account_id": {
"type": "string"
}
}
}
},
"additionalProperties": false
},
{
"description": "The size of the contract code exceeded the limit in a DeployContract action.",
"type": "object",
"required": [
"ContractSizeExceeded"
],
"properties": {
"ContractSizeExceeded": {
"type": "object",
"required": [
"limit",
"size"
],
"properties": {
"limit": {
"type": "integer",
"format": "uint64",
"minimum": 0.0
},
"size": {
"type": "integer",
"format": "uint64",
"minimum": 0.0
}
}
}
},
"additionalProperties": false
},
{
"description": "The length of the method name exceeded the limit in a Function Call action.",
"type": "object",
"required": [
"FunctionCallMethodNameLengthExceeded"
],
"properties": {
"FunctionCallMethodNameLengthExceeded": {
"type": "object",
"required": [
"length",
"limit"
],
"properties": {
"length": {
"type": "integer",
"format": "uint64",
"minimum": 0.0
},
"limit": {
"type": "integer",
"format": "uint64",
"minimum": 0.0
}
}
}
},
"additionalProperties": false
},
{
"description": "The length of the arguments exceeded the limit in a Function Call action.",
"type": "object",
"required": [
"FunctionCallArgumentsLengthExceeded"
],
"properties": {
"FunctionCallArgumentsLengthExceeded": {
"type": "object",
"required": [
"length",
"limit"
],
"properties": {
"length": {
"type": "integer",
"format": "uint64",
"minimum": 0.0
},
"limit": {
"type": "integer",
"format": "uint64",
"minimum": 0.0
}
}
}
},
"additionalProperties": false
},
{
"description": "An attempt to stake with a public key that is not convertible to ristretto.",
"type": "object",
"required": [
"UnsuitableStakingKey"
],
"properties": {
"UnsuitableStakingKey": {
"type": "object",
"required": [
"public_key"
],
"properties": {
"public_key": {
"$ref": "#/components/schemas/PublicKey"
}
}
}
},
"additionalProperties": false
},
{
"description": "The attached amount of gas in a FunctionCall action has to be a positive number.",
"type": "string",
"enum": [
"FunctionCallZeroAttachedGas"
]
},
{
"description": "There should be the only one DelegateAction",
"type": "string",
"enum": [
"DelegateActionMustBeOnlyOne"
]
},
{
"description": "The transaction includes a feature that the current protocol version\ndoes not support.\n\nNote: we stringify the protocol feature name instead of using\n`ProtocolFeature` here because we don't want to leak the internals of\nthat type into observable borsh serialization.",
"type": "object",
"required": [
"UnsupportedProtocolFeature"
],
"properties": {
"UnsupportedProtocolFeature": {
"type": "object",
"required": [
"protocol_feature",
"version"
],
"properties": {
"protocol_feature": {
"type": "string"
},
"version": {
"type": "integer",
"format": "uint32",
"minimum": 0.0
}
}
}
},
"additionalProperties": false
},
{
"type": "object",
"required": [
"InvalidDeterministicStateInitReceiver"
],
"properties": {
"InvalidDeterministicStateInitReceiver": {
"type": "object",
"required": [
"derived_id",
"receiver_id"
],
"properties": {
"derived_id": {
"$ref": "#/components/schemas/AccountId"
},
"receiver_id": {
"$ref": "#/components/schemas/AccountId"
}
}
}
},
"additionalProperties": false
},
{
"type": "object",
"required": [
"DeterministicStateInitKeyLengthExceeded"
],
"properties": {
"DeterministicStateInitKeyLengthExceeded": {
"type": "object",
"required": [
"length",
"limit"
],
"properties": {
"length": {
"type": "integer",
"format": "uint64",
"minimum": 0.0
},
"limit": {
"type": "integer",
"format": "uint64",
"minimum": 0.0
}
}
}
},
"additionalProperties": false
},
{
"type": "object",
"required": [
"DeterministicStateInitValueLengthExceeded"
],
"properties": {
"DeterministicStateInitValueLengthExceeded": {
"type": "object",
"required": [
"length",
"limit"
],
"properties": {
"length": {
"type": "integer",
"format": "uint64",
"minimum": 0.0
},
"limit": {
"type": "integer",
"format": "uint64",
"minimum": 0.0
}
}
}
},
"additionalProperties": false
},
{
"type": "object",
"required": [
"GasKeyPermissionInvalid"
],
"properties": {
"GasKeyPermissionInvalid": {
"type": "object",
"required": [
"permission"
],
"properties": {
"permission": {
"$ref": "#/components/schemas/AccessKeyPermission"
}
}
}
},
"additionalProperties": false
},
{
"type": "object",
"required": [
"GasKeyTooManyNoncesRequested"
],
"properties": {
"GasKeyTooManyNoncesRequested": {
"type": "object",
"required": [
"limit",
"requested_nonces"
],
"properties": {
"limit": {
"type": "integer",
"format": "uint32",
"minimum": 0.0
},
"requested_nonces": {
"type": "integer",
"format": "uint32",
"minimum": 0.0
}
}
}
},
"additionalProperties": false
}
]
}Variants§
DeleteActionMustBeFinal
The delete action must be a final action in transaction
TotalPrepaidGasExceeded
The total prepaid gas (for all given actions) exceeded the limit.
TotalNumberOfActionsExceeded
The number of actions exceeded the given limit.
AddKeyMethodNamesNumberOfBytesExceeded
The total number of bytes of the method names exceeded the limit in a Add Key action.
AddKeyMethodNameLengthExceeded
The length of some method name exceeded the limit in a Add Key action.
IntegerOverflow
Integer overflow during a compute.
InvalidAccountId
Invalid account ID.
ContractSizeExceeded
The size of the contract code exceeded the limit in a DeployContract action.
FunctionCallMethodNameLengthExceeded
The length of the method name exceeded the limit in a Function Call action.
FunctionCallArgumentsLengthExceeded
The length of the arguments exceeded the limit in a Function Call action.
UnsuitableStakingKey
An attempt to stake with a public key that is not convertible to ristretto.
FunctionCallZeroAttachedGas
The attached amount of gas in a FunctionCall action has to be a positive number.
DelegateActionMustBeOnlyOne
There should be the only one DelegateAction
UnsupportedProtocolFeature
The transaction includes a feature that the current protocol version does not support.
Note: we stringify the protocol feature name instead of using
ProtocolFeature here because we don’t want to leak the internals of
that type into observable borsh serialization.
InvalidDeterministicStateInitReceiver
DeterministicStateInitKeyLengthExceeded
DeterministicStateInitValueLengthExceeded
GasKeyPermissionInvalid
Fields
permission: AccessKeyPermissionGasKeyTooManyNoncesRequested
Trait Implementations§
Source§impl Clone for ActionsValidationError
impl Clone for ActionsValidationError
Source§fn clone(&self) -> ActionsValidationError
fn clone(&self) -> ActionsValidationError
1.0.0 · Source§fn clone_from(&mut self, source: &Self)
fn clone_from(&mut self, source: &Self)
source. Read moreSource§impl Debug for ActionsValidationError
impl Debug for ActionsValidationError
Source§impl<'de> Deserialize<'de> for ActionsValidationError
impl<'de> Deserialize<'de> for ActionsValidationError
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 ActionsValidationError
impl Display for ActionsValidationError
Source§impl Error for ActionsValidationError
impl Error for ActionsValidationError
1.30.0 · 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
Source§impl From<&ActionsValidationError> for ActionsValidationError
impl From<&ActionsValidationError> for ActionsValidationError
Source§fn from(value: &ActionsValidationError) -> Self
fn from(value: &ActionsValidationError) -> Self
Source§impl From<ActionsValidationError> for InvalidTxError
impl From<ActionsValidationError> for InvalidTxError
Source§fn from(value: ActionsValidationError) -> Self
fn from(value: ActionsValidationError) -> Self
Source§impl From<ActionsValidationError> for ReceiptValidationError
impl From<ActionsValidationError> for ReceiptValidationError
Source§fn from(value: ActionsValidationError) -> Self
fn from(value: ActionsValidationError) -> Self
Auto Trait Implementations§
impl Freeze for ActionsValidationError
impl RefUnwindSafe for ActionsValidationError
impl Send for ActionsValidationError
impl Sync for ActionsValidationError
impl Unpin for ActionsValidationError
impl UnwindSafe for ActionsValidationError
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
Source§impl<T> CloneToUninit for Twhere
T: Clone,
impl<T> CloneToUninit for Twhere
T: Clone,
Source§impl<T> Instrument for T
impl<T> Instrument for T
Source§fn instrument(self, span: Span) -> Instrumented<Self>
fn instrument(self, span: Span) -> Instrumented<Self>
Source§fn in_current_span(self) -> Instrumented<Self>
fn in_current_span(self) -> Instrumented<Self>
Source§impl<T> PolicyExt for Twhere
T: ?Sized,
impl<T> PolicyExt for Twhere
T: ?Sized,
Source§impl<T> ToStringFallible for Twhere
T: Display,
impl<T> ToStringFallible for Twhere
T: Display,
Source§fn try_to_string(&self) -> Result<String, TryReserveError>
fn try_to_string(&self) -> Result<String, TryReserveError>
ToString::to_string, but without panic on OOM.