pub struct RelBlockPos {
pub x: i16,
pub y: i32,
pub z: i16,
}
Expand description
An offset from a block position.
This fits in 64 bits, so it’s more efficient than a BlockPos in some cases.
The X and Z are limited to ±32k.
Fields§
§x: i16
§y: i32
Note that the y isn’t relative.
z: i16
Implementations§
Source§impl RelBlockPos
impl RelBlockPos
pub fn get_origin(origin: BlockPos) -> Self
pub fn new(x: i16, y: i32, z: i16) -> Self
pub fn apply(self, origin: BlockPos) -> BlockPos
Sourcepub fn from_origin(origin: BlockPos, new: BlockPos) -> Self
pub fn from_origin(origin: BlockPos, new: BlockPos) -> Self
Create a new RelBlockPos
from a given origin and new position.
pub fn up(&self, y: i32) -> Self
pub fn down(&self, y: i32) -> Self
pub fn north(&self, z: i16) -> Self
pub fn south(&self, z: i16) -> Self
pub fn east(&self, x: i16) -> Self
pub fn west(&self, x: i16) -> Self
Trait Implementations§
Source§impl Add for RelBlockPos
impl Add for RelBlockPos
Source§type Output = RelBlockPos
type Output = RelBlockPos
The resulting type after applying the
+
operator.Source§impl Clone for RelBlockPos
impl Clone for RelBlockPos
Source§fn clone(&self) -> RelBlockPos
fn clone(&self) -> RelBlockPos
Returns a copy of the value. Read more
1.0.0 · Source§fn clone_from(&mut self, source: &Self)
fn clone_from(&mut self, source: &Self)
Performs copy-assignment from
source
. Read moreSource§impl Debug for RelBlockPos
impl Debug for RelBlockPos
Source§impl Hash for RelBlockPos
impl Hash for RelBlockPos
Source§impl Mul<i16> for RelBlockPos
impl Mul<i16> for RelBlockPos
Source§impl PartialEq for RelBlockPos
impl PartialEq for RelBlockPos
impl Copy for RelBlockPos
impl Eq for RelBlockPos
impl StructuralPartialEq for RelBlockPos
Auto Trait Implementations§
impl Freeze for RelBlockPos
impl RefUnwindSafe for RelBlockPos
impl Send for RelBlockPos
impl Sync for RelBlockPos
impl Unpin for RelBlockPos
impl UnwindSafe for RelBlockPos
Blanket Implementations§
Source§impl<T> BorrowMut<T> for Twhere
T: ?Sized,
impl<T> BorrowMut<T> for Twhere
T: ?Sized,
Source§fn borrow_mut(&mut self) -> &mut T
fn borrow_mut(&mut self) -> &mut T
Mutably borrows from an owned value. Read more
Source§impl<T> CloneToUninit for Twhere
T: Clone,
impl<T> CloneToUninit for Twhere
T: Clone,
§impl<T> Downcast for Twhere
T: Any,
impl<T> Downcast for Twhere
T: Any,
§fn into_any(self: Box<T>) -> Box<dyn Any>
fn into_any(self: Box<T>) -> Box<dyn Any>
Convert
Box<dyn Trait>
(where Trait: Downcast
) to Box<dyn Any>
. Box<dyn Any>
can
then be further downcast
into Box<ConcreteType>
where ConcreteType
implements Trait
.§fn into_any_rc(self: Rc<T>) -> Rc<dyn Any>
fn into_any_rc(self: Rc<T>) -> Rc<dyn Any>
Convert
Rc<Trait>
(where Trait: Downcast
) to Rc<Any>
. Rc<Any>
can then be
further downcast
into Rc<ConcreteType>
where ConcreteType
implements Trait
.§fn as_any(&self) -> &(dyn Any + 'static)
fn as_any(&self) -> &(dyn Any + 'static)
Convert
&Trait
(where Trait: Downcast
) to &Any
. This is needed since Rust cannot
generate &Any
’s vtable from &Trait
’s.§fn as_any_mut(&mut self) -> &mut (dyn Any + 'static)
fn as_any_mut(&mut self) -> &mut (dyn Any + 'static)
Convert
&mut Trait
(where Trait: Downcast
) to &Any
. This is needed since Rust cannot
generate &mut Any
’s vtable from &mut Trait
’s.§impl<T> DowncastSync for T
impl<T> DowncastSync for T
§impl<T> DynEq for T
impl<T> DynEq for T
§impl<Q, K> Equivalent<K> for Q
impl<Q, K> Equivalent<K> for Q
§fn equivalent(&self, key: &K) -> bool
fn equivalent(&self, key: &K) -> bool
Checks if this value is equivalent to the given key. Read more
§impl<Q, K> Equivalent<K> for Q
impl<Q, K> Equivalent<K> for Q
§fn equivalent(&self, key: &K) -> bool
fn equivalent(&self, key: &K) -> bool
Checks if this value is equivalent to the given key. Read more
§impl<Q, K> Equivalent<K> for Q
impl<Q, K> Equivalent<K> for Q
§fn equivalent(&self, key: &K) -> bool
fn equivalent(&self, key: &K) -> bool
Compare self to
key
and return true
if they are equal.