aboutsummaryrefslogtreecommitdiff
path: root/azalea-block
diff options
context:
space:
mode:
authormat <git@matdoes.dev>2026-01-03 15:46:15 -0930
committermat <git@matdoes.dev>2026-01-03 23:22:01 -0200
commit3137132bb93be664bc025c8e829e4f67431b4fe3 (patch)
tree17b5d42cdf8db6052e99442fe1e82ed823641e3f /azalea-block
parent57394c07a5de53061f868c131b42007707a2d7f1 (diff)
downloadazalea-drasl-3137132bb93be664bc025c8e829e4f67431b4fe3.tar.xz
cleanup
Diffstat (limited to 'azalea-block')
-rw-r--r--azalea-block/azalea-block-macros/src/lib.rs8
-rw-r--r--azalea-block/azalea-block-macros/src/property/generate.rs4
-rw-r--r--azalea-block/src/generated.rs2
-rw-r--r--azalea-block/src/lib.rs5
4 files changed, 11 insertions, 8 deletions
diff --git a/azalea-block/azalea-block-macros/src/lib.rs b/azalea-block/azalea-block-macros/src/lib.rs
index 23546a2b..47d12345 100644
--- a/azalea-block/azalea-block-macros/src/lib.rs
+++ b/azalea-block/azalea-block-macros/src/lib.rs
@@ -458,19 +458,19 @@ pub fn make_block_states(input: TokenStream) -> TokenStream {
set_property_match_inner.extend(match kind {
PropertyKind::Enum => quote! { #name => self.#name_ident = new_value.parse()?, },
PropertyKind::Bool => {
- quote! { #name => self.#name_ident = new_value.parse::<bool>().map_err(|_| ())?, }
+ quote! { #name => self.#name_ident = new_value.parse::<bool>().map_err(|_| InvalidPropertyError)?, }
}
});
}
let set_property = if set_property_match_inner.is_empty() {
quote! {
- Err(())
+ Err(InvalidPropertyError)
}
} else {
quote! {
match name {
#set_property_match_inner
- _ => return Err(()),
+ _ => return Err(InvalidPropertyError),
}
Ok(())
}
@@ -527,7 +527,7 @@ pub fn make_block_states(input: TokenStream) -> TokenStream {
_ => None,
}
}
- fn set_property(&mut self, name: &str, new_value: &str) -> Result<(), ()> {
+ fn set_property(&mut self, name: &str, new_value: &str) -> Result<(), InvalidPropertyError> {
#set_property
}
}
diff --git a/azalea-block/azalea-block-macros/src/property/generate.rs b/azalea-block/azalea-block-macros/src/property/generate.rs
index fc48e609..1a219059 100644
--- a/azalea-block/azalea-block-macros/src/property/generate.rs
+++ b/azalea-block/azalea-block-macros/src/property/generate.rs
@@ -131,12 +131,12 @@ fn generate_property_code(
}
}
impl FromStr for #property_struct_name {
- type Err = ();
+ type Err = InvalidPropertyError;
fn from_str(s: &str) -> Result<Self, Self::Err> {
Ok(match s {
#from_str_match_inner
- _ => return Err(())
+ _ => return Err(InvalidPropertyError)
})
}
}
diff --git a/azalea-block/src/generated.rs b/azalea-block/src/generated.rs
index d042da22..092b00bd 100644
--- a/azalea-block/src/generated.rs
+++ b/azalea-block/src/generated.rs
@@ -5,7 +5,7 @@ use std::{fmt::Debug, str::FromStr};
use azalea_block_macros::make_block_states;
use crate::{
- BlockBehavior, BlockState, BlockStates, BlockTrait, Property,
+ BlockBehavior, BlockState, BlockStates, BlockTrait, InvalidPropertyError, Property,
block_state::BlockStateIntegerRepr,
};
diff --git a/azalea-block/src/lib.rs b/azalea-block/src/lib.rs
index 3c64af25..86e2bc4f 100644
--- a/azalea-block/src/lib.rs
+++ b/azalea-block/src/lib.rs
@@ -52,9 +52,12 @@ pub trait BlockTrait: Debug + Any {
/// returns `Err(())`.
///
/// To get a property, use [`Self::get_property`].
- fn set_property(&mut self, name: &str, new_value: &str) -> Result<(), ()>;
+ fn set_property(&mut self, name: &str, new_value: &str) -> Result<(), InvalidPropertyError>;
}
+#[derive(Debug)]
+pub struct InvalidPropertyError;
+
impl dyn BlockTrait {
pub fn downcast_ref<T: BlockTrait>(&self) -> Option<&T> {
(self as &dyn Any).downcast_ref::<T>()