pub enum ButtplugDeviceError {
Show 24 variants DeviceNotConnected(String), MessageNotSupported(ButtplugDeviceMessageType), DeviceFeatureCountMismatch(u32, u32), DeviceFeatureIndexError(u32, u32), DeviceSensorIndexError(u32, u32), DeviceConnectionError(String), DeviceCommunicationError(String), InvalidEndpoint(Endpoint), UnhandledCommand(String), DeviceSpecificError(HardwareSpecificError), DeviceNotAvailable(u32), DeviceScanningAlreadyStarted, DeviceScanningAlreadyStopped, DevicePermissionError(String), ProtocolAttributesNotFound(String), ProtocolNotImplemented(String), ProtocolSpecificError(String, String), ProtocolRequirementError(String), ProtocolAlreadyAdded(String), UntypedDeserializedError(String), DeviceConfigurationError(String), DeviceActuatorTypeMismatch(String, ActuatorType, ActuatorType), DeviceSensorTypeMismatch(u32, SensorType, SensorType), ProtocolSensorNotSupported(SensorType),
}

Variants§

§

DeviceNotConnected(String)

Device {0} not connected

§

MessageNotSupported(ButtplugDeviceMessageType)

Device does not support message type {0}.

§

DeviceFeatureCountMismatch(u32, u32)

Device only has {0} features, but {1} commands were sent.

§

DeviceFeatureIndexError(u32, u32)

Device only has {0} features, but was given an index of {1}

§

DeviceSensorIndexError(u32, u32)

Device only has {0} sensors, but was given an index of {1}

§

DeviceConnectionError(String)

Device connection error: {0}

§

DeviceCommunicationError(String)

Device communication error: {0}

§

InvalidEndpoint(Endpoint)

Device does not have endpoint {0}

§

UnhandledCommand(String)

Device does not handle command type: {0}

§

DeviceSpecificError(HardwareSpecificError)

Device type specific error: {0}.

§

DeviceNotAvailable(u32)

No device available at index {0}

§

DeviceScanningAlreadyStarted

Device scanning already started.

§

DeviceScanningAlreadyStopped

Device scanning already stopped.

§

DevicePermissionError(String)

Device permission error: {0}

§

ProtocolAttributesNotFound(String)

{0}

§

ProtocolNotImplemented(String)

Protocol {0} not implemented in library

§

ProtocolSpecificError(String, String)

{0} protocol specific error: {1}

§

ProtocolRequirementError(String)

{0}

§

ProtocolAlreadyAdded(String)

Protocol already added to system {0},

§

UntypedDeserializedError(String)

Untyped Deserialized Error: {0}

§

DeviceConfigurationError(String)

Device Configuration Error: {0}

§

DeviceActuatorTypeMismatch(String, ActuatorType, ActuatorType)

Actuator Type Mismatch: Index {0} got command for {1}, but expects {2}

§

DeviceSensorTypeMismatch(u32, SensorType, SensorType)

Sensor Type Mismatch: Index {0} got command for {1}, but expects {2}

§

ProtocolSensorNotSupported(SensorType)

Protocol does not have an implementation available for Sensor Type {0}

Trait Implementations§

source§

impl Clone for ButtplugDeviceError

source§

fn clone(&self) -> ButtplugDeviceError

Returns a copy 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 ButtplugDeviceError

source§

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

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

impl<'de> Deserialize<'de> for ButtplugDeviceError

source§

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 Display for ButtplugDeviceError

source§

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

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

impl Error for ButtplugDeviceError

source§

fn source(&self) -> Option<&(dyn Error + 'static)>

The lower-level source of this error, if any. Read more
1.0.0 · source§

fn description(&self) -> &str

👎Deprecated since 1.42.0: use the Display impl or to_string()
1.0.0 · source§

fn cause(&self) -> Option<&dyn Error>

👎Deprecated since 1.33.0: replaced by Error::source, which can support downcasting
source§

fn provide<'a>(&'a self, demand: &mut Demand<'a>)

🔬This is a nightly-only experimental API. (error_generic_member_access)
Provides type based access to context intended for error reports. Read more
source§

impl<T> From<ButtplugDeviceError> for BoxFuture<'static, Result<T, ButtplugError>>where T: Send + 'static,

Device errors occur during device interactions, including sending unsupported message commands, addressing the wrong number of device attributes, etc…

source§

fn from( err: ButtplugDeviceError ) -> BoxFuture<'static, Result<T, ButtplugError>>

Converts to this type from the input type.
source§

impl From<ButtplugDeviceError> for ButtplugError

source§

fn from(source: ButtplugDeviceError) -> Self

Converts to this type from the input type.
source§

impl From<HardwareSpecificError> for ButtplugDeviceError

source§

fn from(source: HardwareSpecificError) -> Self

Converts to this type from the input type.
source§

impl PartialEq<ButtplugDeviceError> for ButtplugDeviceError

source§

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

This method tests for self and other values to be equal, and is used by ==.
1.0.0 · source§

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

This method tests for !=. The default implementation is almost always sufficient, and should not be overridden without very good reason.
source§

impl Serialize for ButtplugDeviceError

source§

fn serialize<__S>(&self, __serializer: __S) -> Result<__S::Ok, __S::Error>where __S: Serializer,

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

impl Eq for ButtplugDeviceError

source§

impl StructuralEq for ButtplugDeviceError

source§

impl StructuralPartialEq for ButtplugDeviceError

Auto Trait Implementations§

Blanket Implementations§

source§

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

source§

fn type_id(&self) -> TypeId

Gets the TypeId of self. Read more
source§

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

source§

fn borrow(&self) -> &T

Immutably borrows from an owned value. Read more
source§

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

source§

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

Mutably borrows from an owned value. Read more
source§

impl<Q, K> Equivalent<K> for Qwhere 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> 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> 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 Twhere 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<E> Provider for Ewhere E: Error + ?Sized,

source§

fn provide<'a>(&'a self, demand: &mut Demand<'a>)

🔬This is a nightly-only experimental API. (provide_any)
Data providers should implement this method to provide all values they are able to provide by using demand. Read more
source§

impl<T> Same<T> for T

§

type Output = T

Should always be Self
source§

impl<T> ToOwned for Twhere T: Clone,

§

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> ToString for Twhere T: Display + ?Sized,

source§

default fn to_string(&self) -> String

Converts the given value to a String. Read more
source§

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

§

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 Twhere U: TryFrom<T>,

§

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.
§

impl<V, T> VZip<V> for Twhere V: MultiLane<T>,

§

fn vzip(self) -> V

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> 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 Twhere T: for<'de> Deserialize<'de>,