pub trait SizedRoomObject: Into<Reference> + ReferenceType + TryFrom<Value, Error = ConversionError> + TryFrom<Reference, Error = ConversionError> { }
Expand description

Trait representing things that are both RoomObjectProperties and Sized.

These bounds would be on RoomObjectProperties, but for the fact that they then require all T: RoomObjectProperties to be T: Sized, and thus disallow creating trait objects like &dyn RoomObjectProperties (or more usefully, &dyn Attackable or &dyn HasStore)

This trait is automatically implemented for all structures implementing the traits it requires, and everything implement RoomObjectProperties and being Sized should also implement this.

Implementors