pub struct EvmUserOperation {
pub calls: Vec<EvmCall>,
pub network: EvmUserOperationNetwork,
pub receipts: Vec<UserOperationReceipt>,
pub status: EvmUserOperationStatus,
pub transaction_hash: Option<EvmUserOperationTransactionHash>,
pub user_op_hash: EvmUserOperationUserOpHash,
}
Expand description
EvmUserOperation
JSON schema
{
"type": "object",
"required": [
"calls",
"network",
"status",
"userOpHash"
],
"properties": {
"calls": {
"description": "The list of calls in the user operation.",
"examples": [
[
{
"data": "0xa9059cbb000000000000000000000000fc807d1be4997e5c7b33e4d8d57e60c5b0f02b1a0000000000000000000000000000000000000000000000000000000000000064",
"to": "0xa0b86991c6218b36c1d19d4a2e9eb0ce3606eb48",
"value": "0"
},
{
"data": "0x",
"to": "0xdac17f958d2ee523a2206206994597c13d831ec7",
"value": "1000000000000000"
}
]
],
"type": "array",
"items": {
"$ref": "#/components/schemas/EvmCall"
}
},
"network": {
"$ref": "#/components/schemas/EvmUserOperationNetwork"
},
"receipts": {
"description": "The list of receipts associated with the user operation.",
"examples": [
[
{
"revert": {
"data": "0x123",
"message": "reason for failure"
}
}
]
],
"type": "array",
"items": {
"$ref": "#/components/schemas/UserOperationReceipt"
}
},
"status": {
"description": "The status of the user operation.",
"examples": [
"pending"
],
"type": "string",
"enum": [
"pending",
"signed",
"broadcast",
"complete",
"dropped",
"failed"
]
},
"transactionHash": {
"description": "The hash of the transaction that included this particular user operation. This gets set after the user operation is broadcasted and the transaction is included in a block.",
"examples": [
"0x0123456789abcdef0123456789abcdef0123456789abcdef0123456789abcdef"
],
"type": "string",
"pattern": "^0x[0-9a-fA-F]{64}$|^$"
},
"userOpHash": {
"description": "The hash of the user operation. This is not the transaction hash, as a transaction consists of multiple user operations. The user operation hash is the hash of this particular user operation which gets signed by the owner of the Smart Account.",
"examples": [
"0x1234567890abcdef1234567890abcdef1234567890abcdef1234567890abcdef"
],
"type": "string",
"pattern": "^0x[0-9a-fA-F]{64}$"
}
}
}
Fields§
§calls: Vec<EvmCall>
The list of calls in the user operation.
network: EvmUserOperationNetwork
§receipts: Vec<UserOperationReceipt>
The list of receipts associated with the user operation.
status: EvmUserOperationStatus
The status of the user operation.
transaction_hash: Option<EvmUserOperationTransactionHash>
The hash of the transaction that included this particular user operation. This gets set after the user operation is broadcasted and the transaction is included in a block.
user_op_hash: EvmUserOperationUserOpHash
The hash of the user operation. This is not the transaction hash, as a transaction consists of multiple user operations. The user operation hash is the hash of this particular user operation which gets signed by the owner of the Smart Account.
Implementations§
Source§impl EvmUserOperation
impl EvmUserOperation
pub fn builder() -> EvmUserOperation
Trait Implementations§
Source§impl Clone for EvmUserOperation
impl Clone for EvmUserOperation
Source§fn clone(&self) -> EvmUserOperation
fn clone(&self) -> EvmUserOperation
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 Debug for EvmUserOperation
impl Debug for EvmUserOperation
Source§impl<'de> Deserialize<'de> for EvmUserOperation
impl<'de> Deserialize<'de> for EvmUserOperation
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>,
Deserialize this value from the given Serde deserializer. Read more
Source§impl From<&EvmUserOperation> for EvmUserOperation
impl From<&EvmUserOperation> for EvmUserOperation
Source§fn from(value: &EvmUserOperation) -> Self
fn from(value: &EvmUserOperation) -> Self
Converts to this type from the input type.
Source§impl From<EvmUserOperation> for EvmUserOperation
impl From<EvmUserOperation> for EvmUserOperation
Source§fn from(value: EvmUserOperation) -> Self
fn from(value: EvmUserOperation) -> Self
Converts to this type from the input type.
Source§impl Serialize for EvmUserOperation
impl Serialize for EvmUserOperation
Source§impl TryFrom<EvmUserOperation> for EvmUserOperation
impl TryFrom<EvmUserOperation> for EvmUserOperation
Source§type Error = ConversionError
type Error = ConversionError
The type returned in the event of a conversion error.
Source§fn try_from(value: EvmUserOperation) -> Result<Self, ConversionError>
fn try_from(value: EvmUserOperation) -> Result<Self, ConversionError>
Performs the conversion.
Auto Trait Implementations§
impl Freeze for EvmUserOperation
impl RefUnwindSafe for EvmUserOperation
impl Send for EvmUserOperation
impl Sync for EvmUserOperation
impl Unpin for EvmUserOperation
impl UnwindSafe for EvmUserOperation
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