Skip to main content

ErrorCode

Enum ErrorCode 

Source
#[non_exhaustive]
#[repr(i32)]
pub enum ErrorCode {
Show 18 variants ParseError = -32_700, InvalidRequest = -32_600, MethodNotFound = -32_601, InvalidParams = -32_602, InternalError = -32_603, NotSynced = 10_001, PeerUnauthorized = 10_002, PermissionDenied = 10_003, RateLimited = 10_004, ResourceNotFound = 10_005, SlashingGuardBlocked = 10_010, InvalidSignature = 10_011, InvalidProof = 10_012, L1Unavailable = 10_020, WalletLocked = 10_030, ShutdownPending = 10_040, NetworkMismatch = 10_050, VersionMismatch = 10_051,
}
Expand description

Stable JSON-RPC error code.

Serialises as a bare integer on the wire (via serde_repr) so values are JSON-RPC-spec-compliant. The enum is #[non_exhaustive] so that adding variants in minor releases is backwards-compatible — clients built against an older dig-rpc-types must use _ => ... when matching.

Variants (Non-exhaustive)§

This enum is marked as non-exhaustive
Non-exhaustive enums could have additional variants added in future. Therefore, when matching against variants of non-exhaustive enums, an extra wildcard arm must be added to account for any future variants.
§

ParseError = -32_700

Invalid JSON was received by the server.

§

InvalidRequest = -32_600

The JSON sent is not a valid Request object.

§

MethodNotFound = -32_601

The method does not exist / is not available.

§

InvalidParams = -32_602

Invalid method parameter(s).

§

InternalError = -32_603

Internal JSON-RPC error.

§

NotSynced = 10_001

The fullnode is not yet synced to chain tip; the requested data may be stale or unavailable.

§

PeerUnauthorized = 10_002

The peer’s certificate does not resolve to any known role (internal server only).

§

PermissionDenied = 10_003

The peer’s resolved role is below the method’s min_role.

§

RateLimited = 10_004

The peer exceeded its per-opcode token bucket.

§

ResourceNotFound = 10_005

The requested block / coin / validator was not found.

§

SlashingGuardBlocked = 10_010

The validator’s local slashing-protection DB would veto this signature (e.g., proposed-slot watermark, attested-target watermark).

§

InvalidSignature = 10_011

A provided BLS signature failed verification.

§

InvalidProof = 10_012

A provided Groth16 or other ZK proof failed verification.

§

L1Unavailable = 10_020

Cannot reach Chia L1 (peer pool exhausted, no coinset fallback).

§

WalletLocked = 10_030

The wallet is locked; unlock before calling signing methods.

§

ShutdownPending = 10_040

Server is shutting down; retry against another peer.

§

NetworkMismatch = 10_050

The client’s advertised network id differs from the server’s.

§

VersionMismatch = 10_051

The client’s advertised schema major version differs from the server’s.

Implementations§

Source§

impl ErrorCode

Source

pub fn code(self) -> i32

Return the raw integer code.

Equivalent to self as i32; provided as an explicit method so callers don’t rely on repr casting.

Source

pub fn is_jsonrpc_reserved(self) -> bool

Whether this variant is in the JSON-RPC-reserved range.

Source

pub fn is_dig_specific(self) -> bool

Whether this variant is DIG-specific (1xxxx range).

Trait Implementations§

Source§

impl Clone for ErrorCode

Source§

fn clone(&self) -> ErrorCode

Returns a duplicate of the value. Read more
1.0.0 · Source§

fn clone_from(&mut self, source: &Self)

Performs copy-assignment from source. Read more
Source§

impl Debug for ErrorCode

Source§

fn fmt(&self, f: &mut Formatter<'_>) -> Result<(), Error>

Formats the value using the given formatter. Read more
Source§

impl<'de> Deserialize<'de> for ErrorCode

Source§

fn deserialize<D>( deserializer: D, ) -> Result<ErrorCode, <D as Deserializer<'de>>::Error>
where D: Deserializer<'de>,

Deserialize this value from the given Serde deserializer. Read more
Source§

impl Hash for ErrorCode

Source§

fn hash<__H>(&self, state: &mut __H)
where __H: Hasher,

Feeds this value into the given Hasher. Read more
1.3.0 · Source§

fn hash_slice<H>(data: &[Self], state: &mut H)
where H: Hasher, Self: Sized,

Feeds a slice of this type into the given Hasher. Read more
Source§

impl PartialEq for ErrorCode

Source§

fn eq(&self, other: &ErrorCode) -> bool

Tests for self and other values to be equal, and is used by ==.
1.0.0 · Source§

fn ne(&self, other: &Rhs) -> bool

Tests for !=. The default implementation is almost always sufficient, and should not be overridden without very good reason.
Source§

impl Serialize for ErrorCode

Source§

fn serialize<S>( &self, serializer: S, ) -> Result<<S as Serializer>::Ok, <S as Serializer>::Error>
where S: Serializer,

Serialize this value into the given Serde serializer. Read more
Source§

impl Copy for ErrorCode

Source§

impl Eq for ErrorCode

Source§

impl StructuralPartialEq for ErrorCode

Auto Trait Implementations§

Blanket Implementations§

Source§

impl<T> Any for T
where T: 'static + ?Sized,

Source§

fn type_id(&self) -> TypeId

Gets the TypeId of self. Read more
Source§

impl<T> Borrow<T> for T
where T: ?Sized,

Source§

fn borrow(&self) -> &T

Immutably borrows from an owned value. Read more
Source§

impl<T> BorrowMut<T> for T
where T: ?Sized,

Source§

fn borrow_mut(&mut self) -> &mut T

Mutably borrows from an owned value. Read more
Source§

impl<T> CloneToUninit for T
where T: Clone,

Source§

unsafe fn clone_to_uninit(&self, dest: *mut u8)

🔬This is a nightly-only experimental API. (clone_to_uninit)
Performs copy-assignment from self to dest. Read more
Source§

impl<Q, K> Equivalent<K> for Q
where Q: Eq + ?Sized, K: Borrow<Q> + ?Sized,

Source§

fn equivalent(&self, key: &K) -> bool

Checks if this value is equivalent to the given key. Read more
Source§

impl<Q, K> Equivalent<K> for Q
where Q: Eq + ?Sized, K: Borrow<Q> + ?Sized,

Source§

fn equivalent(&self, key: &K) -> bool

Compare self to key and return true if they are equal.
Source§

impl<T> From<T> for T

Source§

fn from(t: T) -> T

Returns the argument unchanged.

Source§

impl<T> FromRef<T> for T
where T: Clone,

Source§

fn from_ref(input: &T) -> T

Converts to this type from a reference to the input type.
Source§

impl<T> Instrument for T

Source§

fn instrument(self, span: Span) -> Instrumented<Self>

Instruments this type with the provided Span, returning an Instrumented wrapper. Read more
Source§

fn in_current_span(self) -> Instrumented<Self>

Instruments this type with the current Span, returning an Instrumented wrapper. Read more
Source§

impl<T, U> Into<U> for T
where U: From<T>,

Source§

fn into(self) -> U

Calls U::from(self).

That is, this conversion is whatever the implementation of From<T> for U chooses to do.

Source§

impl<T> ToOwned for T
where T: Clone,

Source§

type Owned = T

The resulting type after obtaining ownership.
Source§

fn to_owned(&self) -> T

Creates owned data from borrowed data, usually by cloning. Read more
Source§

fn clone_into(&self, target: &mut T)

Uses borrowed data to replace owned data, usually by cloning. Read more
Source§

impl<T, U> TryFrom<U> for T
where U: Into<T>,

Source§

type Error = Infallible

The type returned in the event of a conversion error.
Source§

fn try_from(value: U) -> Result<T, <T as TryFrom<U>>::Error>

Performs the conversion.
Source§

impl<T, U> TryInto<U> for T
where U: TryFrom<T>,

Source§

type Error = <U as TryFrom<T>>::Error

The type returned in the event of a conversion error.
Source§

fn try_into(self) -> Result<U, <U as TryFrom<T>>::Error>

Performs the conversion.
Source§

impl<T> WithSubscriber for T

Source§

fn with_subscriber<S>(self, subscriber: S) -> WithDispatch<Self>
where S: Into<Dispatch>,

Attaches the provided Subscriber to this type, returning a WithDispatch wrapper. Read more
Source§

fn with_current_subscriber(self) -> WithDispatch<Self>

Attaches the current default Subscriber to this type, returning a WithDispatch wrapper. Read more
Source§

impl<T> DeserializeOwned for T
where T: for<'de> Deserialize<'de>,