diff options
Diffstat (limited to 'azalea-block/src')
| -rw-r--r-- | azalea-block/src/generated.rs | 2 | ||||
| -rw-r--r-- | azalea-block/src/lib.rs | 5 |
2 files changed, 5 insertions, 2 deletions
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>() |
