aboutsummaryrefslogtreecommitdiff
path: root/azalea-brigadier/src/errors/mod.rs
diff options
context:
space:
mode:
Diffstat (limited to 'azalea-brigadier/src/errors/mod.rs')
-rw-r--r--azalea-brigadier/src/errors/mod.rs21
1 files changed, 21 insertions, 0 deletions
diff --git a/azalea-brigadier/src/errors/mod.rs b/azalea-brigadier/src/errors/mod.rs
index facebe5e..49d0f956 100644
--- a/azalea-brigadier/src/errors/mod.rs
+++ b/azalea-brigadier/src/errors/mod.rs
@@ -3,3 +3,24 @@ mod command_syntax_error;
pub use builtin_errors::BuiltInError;
pub use command_syntax_error::CommandSyntaxError;
+
+pub trait CommandResultTrait {
+ fn new(i: i32) -> Self;
+ fn as_i32(&self) -> Option<i32>;
+}
+impl CommandResultTrait for i32 {
+ fn new(i: i32) -> Self {
+ i
+ }
+ fn as_i32(&self) -> Option<i32> {
+ Some(*self)
+ }
+}
+impl<E> CommandResultTrait for Result<i32, E> {
+ fn new(i: i32) -> Self {
+ Ok(i)
+ }
+ fn as_i32(&self) -> Option<i32> {
+ self.as_ref().copied().ok()
+ }
+}