Remove thiserror from bevy_input (#15770)
				
					
				
			# Objective - Contributes to #15460 ## Solution - Removed `thiserror` from `bevy_input`
This commit is contained in:
		
							parent
							
								
									f88c6820f0
								
							
						
					
					
						commit
						5e89acacb4
					
				| @ -36,7 +36,11 @@ bevy_reflect = { path = "../bevy_reflect", version = "0.15.0-dev", features = [ | |||||||
| 
 | 
 | ||||||
| # other | # other | ||||||
| serde = { version = "1", features = ["derive"], optional = true } | serde = { version = "1", features = ["derive"], optional = true } | ||||||
| thiserror = "1.0" | derive_more = { version = "1", default-features = false, features = [ | ||||||
|  |   "error", | ||||||
|  |   "from", | ||||||
|  |   "display", | ||||||
|  | ] } | ||||||
| smol_str = "0.2" | smol_str = "0.2" | ||||||
| 
 | 
 | ||||||
| [lints] | [lints] | ||||||
|  | |||||||
| @ -17,7 +17,7 @@ use bevy_utils::{ | |||||||
|     tracing::{info, warn}, |     tracing::{info, warn}, | ||||||
|     Duration, HashMap, |     Duration, HashMap, | ||||||
| }; | }; | ||||||
| use thiserror::Error; | use derive_more::derive::{Display, Error, From}; | ||||||
| 
 | 
 | ||||||
| /// A gamepad event.
 | /// A gamepad event.
 | ||||||
| ///
 | ///
 | ||||||
| @ -26,7 +26,7 @@ use thiserror::Error; | |||||||
| /// the in-frame relative ordering of events is important.
 | /// the in-frame relative ordering of events is important.
 | ||||||
| ///
 | ///
 | ||||||
| /// This event is produced by `bevy_input`
 | /// This event is produced by `bevy_input`
 | ||||||
| #[derive(Event, Debug, Clone, PartialEq)] | #[derive(Event, Debug, Clone, PartialEq, From)] | ||||||
| #[cfg_attr(feature = "bevy_reflect", derive(Reflect), reflect(Debug, PartialEq))] | #[cfg_attr(feature = "bevy_reflect", derive(Reflect), reflect(Debug, PartialEq))] | ||||||
| #[cfg_attr(feature = "serialize", derive(serde::Serialize, serde::Deserialize))] | #[cfg_attr(feature = "serialize", derive(serde::Serialize, serde::Deserialize))] | ||||||
| #[cfg_attr(
 | #[cfg_attr(
 | ||||||
| @ -42,24 +42,6 @@ pub enum GamepadEvent { | |||||||
|     Axis(GamepadAxisChangedEvent), |     Axis(GamepadAxisChangedEvent), | ||||||
| } | } | ||||||
| 
 | 
 | ||||||
| impl From<GamepadConnectionEvent> for GamepadEvent { |  | ||||||
|     fn from(value: GamepadConnectionEvent) -> Self { |  | ||||||
|         Self::Connection(value) |  | ||||||
|     } |  | ||||||
| } |  | ||||||
| 
 |  | ||||||
| impl From<GamepadButtonChangedEvent> for GamepadEvent { |  | ||||||
|     fn from(value: GamepadButtonChangedEvent) -> Self { |  | ||||||
|         Self::Button(value) |  | ||||||
|     } |  | ||||||
| } |  | ||||||
| 
 |  | ||||||
| impl From<GamepadAxisChangedEvent> for GamepadEvent { |  | ||||||
|     fn from(value: GamepadAxisChangedEvent) -> Self { |  | ||||||
|         Self::Axis(value) |  | ||||||
|     } |  | ||||||
| } |  | ||||||
| 
 |  | ||||||
| /// A raw gamepad event.
 | /// A raw gamepad event.
 | ||||||
| ///
 | ///
 | ||||||
| /// This event type is used over the [`GamepadConnectionEvent`],
 | /// This event type is used over the [`GamepadConnectionEvent`],
 | ||||||
| @ -67,7 +49,7 @@ impl From<GamepadAxisChangedEvent> for GamepadEvent { | |||||||
| /// the in-frame relative ordering of events is important.
 | /// the in-frame relative ordering of events is important.
 | ||||||
| ///
 | ///
 | ||||||
| /// This event type is used by `bevy_input` to feed its components.
 | /// This event type is used by `bevy_input` to feed its components.
 | ||||||
| #[derive(Event, Debug, Clone, PartialEq, Reflect)] | #[derive(Event, Debug, Clone, PartialEq, Reflect, From)] | ||||||
| #[reflect(Debug, PartialEq)] | #[reflect(Debug, PartialEq)] | ||||||
| #[cfg_attr(
 | #[cfg_attr(
 | ||||||
|     feature = "serialize", |     feature = "serialize", | ||||||
| @ -83,24 +65,6 @@ pub enum RawGamepadEvent { | |||||||
|     Axis(RawGamepadAxisChangedEvent), |     Axis(RawGamepadAxisChangedEvent), | ||||||
| } | } | ||||||
| 
 | 
 | ||||||
| impl From<GamepadConnectionEvent> for RawGamepadEvent { |  | ||||||
|     fn from(value: GamepadConnectionEvent) -> Self { |  | ||||||
|         Self::Connection(value) |  | ||||||
|     } |  | ||||||
| } |  | ||||||
| 
 |  | ||||||
| impl From<RawGamepadButtonChangedEvent> for RawGamepadEvent { |  | ||||||
|     fn from(value: RawGamepadButtonChangedEvent) -> Self { |  | ||||||
|         Self::Button(value) |  | ||||||
|     } |  | ||||||
| } |  | ||||||
| 
 |  | ||||||
| impl From<RawGamepadAxisChangedEvent> for RawGamepadEvent { |  | ||||||
|     fn from(value: RawGamepadAxisChangedEvent) -> Self { |  | ||||||
|         Self::Axis(value) |  | ||||||
|     } |  | ||||||
| } |  | ||||||
| 
 |  | ||||||
| /// [`GamepadButton`] changed event unfiltered by [`GamepadSettings`]
 | /// [`GamepadButton`] changed event unfiltered by [`GamepadSettings`]
 | ||||||
| #[derive(Event, Debug, Copy, Clone, PartialEq, Reflect)] | #[derive(Event, Debug, Copy, Clone, PartialEq, Reflect)] | ||||||
| #[reflect(Debug, PartialEq)] | #[reflect(Debug, PartialEq)] | ||||||
| @ -281,22 +245,26 @@ impl GamepadAxisChangedEvent { | |||||||
| } | } | ||||||
| 
 | 
 | ||||||
| /// Errors that occur when setting axis settings for gamepad input.
 | /// Errors that occur when setting axis settings for gamepad input.
 | ||||||
| #[derive(Error, Debug, PartialEq)] | #[derive(Error, Display, Debug, PartialEq)] | ||||||
| pub enum AxisSettingsError { | pub enum AxisSettingsError { | ||||||
|     /// The given parameter `livezone_lowerbound` was not in range -1.0..=0.0.
 |     /// The given parameter `livezone_lowerbound` was not in range -1.0..=0.0.
 | ||||||
|     #[error("invalid livezone_lowerbound {0}, expected value [-1.0..=0.0]")] |     #[display("invalid livezone_lowerbound {_0}, expected value [-1.0..=0.0]")] | ||||||
|  |     #[error(ignore)] | ||||||
|     LiveZoneLowerBoundOutOfRange(f32), |     LiveZoneLowerBoundOutOfRange(f32), | ||||||
|     /// The given parameter `deadzone_lowerbound` was not in range -1.0..=0.0.
 |     /// The given parameter `deadzone_lowerbound` was not in range -1.0..=0.0.
 | ||||||
|     #[error("invalid deadzone_lowerbound {0}, expected value [-1.0..=0.0]")] |     #[display("invalid deadzone_lowerbound {_0}, expected value [-1.0..=0.0]")] | ||||||
|  |     #[error(ignore)] | ||||||
|     DeadZoneLowerBoundOutOfRange(f32), |     DeadZoneLowerBoundOutOfRange(f32), | ||||||
|     /// The given parameter `deadzone_lowerbound` was not in range -1.0..=0.0.
 |     /// The given parameter `deadzone_lowerbound` was not in range -1.0..=0.0.
 | ||||||
|     #[error("invalid deadzone_upperbound {0}, expected value [0.0..=1.0]")] |     #[display("invalid deadzone_upperbound {_0}, expected value [0.0..=1.0]")] | ||||||
|  |     #[error(ignore)] | ||||||
|     DeadZoneUpperBoundOutOfRange(f32), |     DeadZoneUpperBoundOutOfRange(f32), | ||||||
|     /// The given parameter `deadzone_lowerbound` was not in range -1.0..=0.0.
 |     /// The given parameter `deadzone_lowerbound` was not in range -1.0..=0.0.
 | ||||||
|     #[error("invalid livezone_upperbound {0}, expected value [0.0..=1.0]")] |     #[display("invalid livezone_upperbound {_0}, expected value [0.0..=1.0]")] | ||||||
|  |     #[error(ignore)] | ||||||
|     LiveZoneUpperBoundOutOfRange(f32), |     LiveZoneUpperBoundOutOfRange(f32), | ||||||
|     /// Parameter `livezone_lowerbound` was not less than or equal to parameter `deadzone_lowerbound`.
 |     /// Parameter `livezone_lowerbound` was not less than or equal to parameter `deadzone_lowerbound`.
 | ||||||
|     #[error("invalid parameter values livezone_lowerbound {} deadzone_lowerbound {}, expected livezone_lowerbound <= deadzone_lowerbound", .livezone_lowerbound, .deadzone_lowerbound)] |     #[display("invalid parameter values livezone_lowerbound {} deadzone_lowerbound {}, expected livezone_lowerbound <= deadzone_lowerbound", livezone_lowerbound, deadzone_lowerbound)] | ||||||
|     LiveZoneLowerBoundGreaterThanDeadZoneLowerBound { |     LiveZoneLowerBoundGreaterThanDeadZoneLowerBound { | ||||||
|         /// The value of the `livezone_lowerbound` parameter.
 |         /// The value of the `livezone_lowerbound` parameter.
 | ||||||
|         livezone_lowerbound: f32, |         livezone_lowerbound: f32, | ||||||
| @ -304,7 +272,7 @@ pub enum AxisSettingsError { | |||||||
|         deadzone_lowerbound: f32, |         deadzone_lowerbound: f32, | ||||||
|     }, |     }, | ||||||
|     ///  Parameter `deadzone_upperbound` was not less than or equal to parameter `livezone_upperbound`.
 |     ///  Parameter `deadzone_upperbound` was not less than or equal to parameter `livezone_upperbound`.
 | ||||||
|     #[error("invalid parameter values livezone_upperbound {} deadzone_upperbound {}, expected deadzone_upperbound <= livezone_upperbound", .livezone_upperbound, .deadzone_upperbound)] |     #[display("invalid parameter values livezone_upperbound {} deadzone_upperbound {}, expected deadzone_upperbound <= livezone_upperbound", livezone_upperbound, deadzone_upperbound)] | ||||||
|     DeadZoneUpperBoundGreaterThanLiveZoneUpperBound { |     DeadZoneUpperBoundGreaterThanLiveZoneUpperBound { | ||||||
|         /// The value of the `livezone_upperbound` parameter.
 |         /// The value of the `livezone_upperbound` parameter.
 | ||||||
|         livezone_upperbound: f32, |         livezone_upperbound: f32, | ||||||
| @ -312,21 +280,24 @@ pub enum AxisSettingsError { | |||||||
|         deadzone_upperbound: f32, |         deadzone_upperbound: f32, | ||||||
|     }, |     }, | ||||||
|     /// The given parameter was not in range 0.0..=2.0.
 |     /// The given parameter was not in range 0.0..=2.0.
 | ||||||
|     #[error("invalid threshold {0}, expected 0.0 <= threshold <= 2.0")] |     #[display("invalid threshold {_0}, expected 0.0 <= threshold <= 2.0")] | ||||||
|  |     #[error(ignore)] | ||||||
|     Threshold(f32), |     Threshold(f32), | ||||||
| } | } | ||||||
| 
 | 
 | ||||||
| /// Errors that occur when setting button settings for gamepad input.
 | /// Errors that occur when setting button settings for gamepad input.
 | ||||||
| #[derive(Error, Debug, PartialEq)] | #[derive(Error, Display, Debug, PartialEq)] | ||||||
| pub enum ButtonSettingsError { | pub enum ButtonSettingsError { | ||||||
|     /// The given parameter was not in range 0.0..=1.0.
 |     /// The given parameter was not in range 0.0..=1.0.
 | ||||||
|     #[error("invalid release_threshold {0}, expected value [0.0..=1.0]")] |     #[display("invalid release_threshold {_0}, expected value [0.0..=1.0]")] | ||||||
|  |     #[error(ignore)] | ||||||
|     ReleaseThresholdOutOfRange(f32), |     ReleaseThresholdOutOfRange(f32), | ||||||
|     /// The given parameter was not in range 0.0..=1.0.
 |     /// The given parameter was not in range 0.0..=1.0.
 | ||||||
|     #[error("invalid press_threshold {0}, expected [0.0..=1.0]")] |     #[display("invalid press_threshold {_0}, expected [0.0..=1.0]")] | ||||||
|  |     #[error(ignore)] | ||||||
|     PressThresholdOutOfRange(f32), |     PressThresholdOutOfRange(f32), | ||||||
|     /// Parameter `release_threshold` was not less than or equal to `press_threshold`.
 |     /// Parameter `release_threshold` was not less than or equal to `press_threshold`.
 | ||||||
|     #[error("invalid parameter values release_threshold {} press_threshold {}, expected release_threshold <= press_threshold", .release_threshold, .press_threshold)] |     #[display("invalid parameter values release_threshold {} press_threshold {}, expected release_threshold <= press_threshold", release_threshold, press_threshold)] | ||||||
|     ReleaseThresholdGreaterThanPressThreshold { |     ReleaseThresholdGreaterThanPressThreshold { | ||||||
|         /// The value of the `press_threshold` parameter.
 |         /// The value of the `press_threshold` parameter.
 | ||||||
|         press_threshold: f32, |         press_threshold: f32, | ||||||
| @ -716,7 +687,7 @@ impl GamepadAxis { | |||||||
| 
 | 
 | ||||||
| /// Encapsulation over [`GamepadAxis`] and [`GamepadButton`]
 | /// Encapsulation over [`GamepadAxis`] and [`GamepadButton`]
 | ||||||
| // This is done so Gamepad can share a single Axis<T> and simplifies the API by having only one get/get_unclamped method
 | // This is done so Gamepad can share a single Axis<T> and simplifies the API by having only one get/get_unclamped method
 | ||||||
| #[derive(Debug, Copy, Clone, Eq, Hash, PartialEq)] | #[derive(Debug, Copy, Clone, Eq, Hash, PartialEq, From)] | ||||||
| #[cfg_attr(feature = "bevy_reflect", derive(Reflect), reflect(Debug, PartialEq))] | #[cfg_attr(feature = "bevy_reflect", derive(Reflect), reflect(Debug, PartialEq))] | ||||||
| pub enum GamepadInput { | pub enum GamepadInput { | ||||||
|     /// A [`GamepadAxis`]
 |     /// A [`GamepadAxis`]
 | ||||||
| @ -725,18 +696,6 @@ pub enum GamepadInput { | |||||||
|     Button(GamepadButton), |     Button(GamepadButton), | ||||||
| } | } | ||||||
| 
 | 
 | ||||||
| impl From<GamepadAxis> for GamepadInput { |  | ||||||
|     fn from(value: GamepadAxis) -> Self { |  | ||||||
|         GamepadInput::Axis(value) |  | ||||||
|     } |  | ||||||
| } |  | ||||||
| 
 |  | ||||||
| impl From<GamepadButton> for GamepadInput { |  | ||||||
|     fn from(value: GamepadButton) -> Self { |  | ||||||
|         GamepadInput::Button(value) |  | ||||||
|     } |  | ||||||
| } |  | ||||||
| 
 |  | ||||||
| /// Gamepad settings component.
 | /// Gamepad settings component.
 | ||||||
| ///
 | ///
 | ||||||
| /// ## Usage
 | /// ## Usage
 | ||||||
|  | |||||||
		Loading…
	
		Reference in New Issue
	
	Block a user
	 Zachary Harrold
						Zachary Harrold