#[repr(u8)]pub enum Corner {
LowerLeft = 0,
LowerRight = 1,
UpperLeft = 2,
UpperRight = 3,
}
Expand description
An enumeration of the corners of an axis-aligned rectangle.
See the module-level documentation for examples.
Variants§
LowerLeft = 0
The lower-left corner.
LowerRight = 1
The lower-right corner.
UpperLeft = 2
The upper-left corner.
UpperRight = 3
The upper-right corner.
Implementations§
source§impl Corner
impl Corner
sourcepub const fn iter() -> CornerIndexableIter ⓘ
pub const fn iter() -> CornerIndexableIter ⓘ
Returns an iterator over all items of Corner
sourcepub const fn count() -> usize
pub const fn count() -> usize
Returns the number of items that will be returned by CornerIndexableIter
that are not disabled members of Corner
source§impl Corner
impl Corner
sourcepub fn side(&self, dir: Dir) -> Side
pub fn side(&self, dir: Dir) -> Side
Gets the Side
corresponding to the given Dir
for this corner.
§Example
assert_eq!(Corner::LowerLeft.side(Dir::Horiz), Side::Left);
assert_eq!(Corner::LowerLeft.side(Dir::Vert), Side::Bot);
assert_eq!(Corner::LowerRight.side(Dir::Horiz), Side::Right);
assert_eq!(Corner::LowerRight.side(Dir::Vert), Side::Bot);
assert_eq!(Corner::UpperLeft.side(Dir::Horiz), Side::Left);
assert_eq!(Corner::UpperLeft.side(Dir::Vert), Side::Top);
assert_eq!(Corner::UpperRight.side(Dir::Horiz), Side::Right);
assert_eq!(Corner::UpperRight.side(Dir::Vert), Side::Top);
Trait Implementations§
source§impl<'de> Deserialize<'de> for Corner
impl<'de> Deserialize<'de> for Corner
source§fn deserialize<__D>(
__deserializer: __D
) -> Result<Corner, <__D as Deserializer<'de>>::Error>where
__D: Deserializer<'de>,
fn deserialize<__D>(
__deserializer: __D
) -> Result<Corner, <__D as Deserializer<'de>>::Error>where
__D: Deserializer<'de>,
Deserialize this value from the given Serde deserializer. Read more
source§impl Indexable for Corner
impl Indexable for Corner
source§const SET_SIZE: usize = 1usize
const SET_SIZE: usize = 1usize
The number of bytes it will take to represent this type in a set. Read more
§type Iter = CornerIndexableIter
type Iter = CornerIndexableIter
The type of Iterator that will be returned by [
Self::iter()
]source§impl PartialEq for Corner
impl PartialEq for Corner
source§impl ReverseIndexable for Corner
impl ReverseIndexable for Corner
source§fn from_index(u: usize) -> Corner
fn from_index(u: usize) -> Corner
Converts from a usize to
Self
source§impl Serialize for Corner
impl Serialize for Corner
source§fn serialize<__S>(
&self,
__serializer: __S
) -> Result<<__S as Serializer>::Ok, <__S as Serializer>::Error>where
__S: Serializer,
fn serialize<__S>(
&self,
__serializer: __S
) -> Result<<__S as Serializer>::Ok, <__S as Serializer>::Error>where
__S: Serializer,
Serialize this value into the given Serde serializer. Read more
impl Copy for Corner
impl Eq for Corner
impl StructuralPartialEq for Corner
Auto Trait Implementations§
impl RefUnwindSafe for Corner
impl Send for Corner
impl Sync for Corner
impl Unpin for Corner
impl UnwindSafe for Corner
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, U> CustomHardwareType<Flipped<T>> for Uwhere
U: CustomHardwareType<T>,
T: HardwareType,
impl<T, U> CustomHardwareType<Flipped<T>> for Uwhere
U: CustomHardwareType<T>,
T: HardwareType,
source§fn from_layout_type(other: &Flipped<T>) -> U
fn from_layout_type(other: &Flipped<T>) -> U
Creates this layout type from another layout type.
source§impl<T, U> CustomHardwareType<InOut<T>> for Uwhere
U: CustomHardwareType<T>,
T: HardwareType,
impl<T, U> CustomHardwareType<InOut<T>> for Uwhere
U: CustomHardwareType<T>,
T: HardwareType,
source§fn from_layout_type(other: &InOut<T>) -> U
fn from_layout_type(other: &InOut<T>) -> U
Creates this layout type from another layout type.
source§impl<T, U> CustomHardwareType<Input<T>> for Uwhere
U: CustomHardwareType<T>,
T: HardwareType,
impl<T, U> CustomHardwareType<Input<T>> for Uwhere
U: CustomHardwareType<T>,
T: HardwareType,
source§fn from_layout_type(other: &Input<T>) -> U
fn from_layout_type(other: &Input<T>) -> U
Creates this layout type from another layout type.
source§impl<T, U> CustomHardwareType<Output<T>> for Uwhere
U: CustomHardwareType<T>,
T: HardwareType,
impl<T, U> CustomHardwareType<Output<T>> for Uwhere
U: CustomHardwareType<T>,
T: HardwareType,
source§fn from_layout_type(other: &Output<T>) -> U
fn from_layout_type(other: &Output<T>) -> U
Creates this layout type from another layout type.
§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
source§impl<Q, K> Equivalent<K> for Q
impl<Q, K> Equivalent<K> for Q
source§fn equivalent(&self, key: &K) -> bool
fn equivalent(&self, key: &K) -> bool
Compare self to
key
and return true
if they are equal.§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.§impl<T> Instrument for T
impl<T> Instrument for T
§fn instrument(self, span: Span) -> Instrumented<Self>
fn instrument(self, span: Span) -> Instrumented<Self>
§fn in_current_span(self) -> Instrumented<Self>
fn in_current_span(self) -> Instrumented<Self>
source§impl<T> IntoRequest<T> for T
impl<T> IntoRequest<T> for T
source§fn into_request(self) -> Request<T>
fn into_request(self) -> Request<T>
Wrap the input message
T
in a tonic::Request