#[non_exhaustive]#[repr(u32)]pub enum LetterboxPlacement {
Center = 0,
TopLeft = 1,
}Expand description
Where a letterboxed image sits inside the destination. The code is the
one the C EF_LETTERBOX_PLACEMENT_* enumerators and the Python
LetterboxPlacement enum use; the string is the edgefirst.json name.
Variants (Non-exhaustive)§
This enum is marked as non-exhaustive
Center = 0
Centred, padding split between both sides (the default). On odd slack the extra pixel goes to the right or bottom.
TopLeft = 1
Anchored at the top-left corner, padding on the right and bottom.
Implementations§
Source§impl LetterboxPlacement
impl LetterboxPlacement
Sourcepub const fn code(self) -> u32
pub const fn code(self) -> u32
The shared code for this variant. Identical on every surface.
const, deliberately: a downstream binding that cannot
write Variant = OtherEnum::Variant.code() in a #[pyclass]
discriminant position (PyO3 requires a literal there) can
still pin that literal to this value with a
const _: () = assert!(...) – a build-time check instead
of a hand-synced comment. See PyTensorMemory/PyPixelFormat
in crates/python-common/src/tensor.rs for the consumer.
Sourcepub fn from_code(code: u32) -> Option<Self>
pub fn from_code(code: u32) -> Option<Self>
Reject an unknown code rather than guessing at one.
Sourcepub fn from_str_code(s: &str) -> Option<Self>
pub fn from_str_code(s: &str) -> Option<Self>
Reject an unknown string rather than guessing at one.
Trait Implementations§
Source§impl Clone for LetterboxPlacement
impl Clone for LetterboxPlacement
impl Copy for LetterboxPlacement
Source§impl Debug for LetterboxPlacement
impl Debug for LetterboxPlacement
Source§impl Default for LetterboxPlacement
impl Default for LetterboxPlacement
Source§impl<'de> Deserialize<'de> for LetterboxPlacement
impl<'de> Deserialize<'de> for LetterboxPlacement
Source§fn deserialize<D: Deserializer<'de>>(d: D) -> Result<Self, D::Error>
fn deserialize<D: Deserializer<'de>>(d: D) -> Result<Self, D::Error>
impl Eq for LetterboxPlacement
Source§impl Hash for LetterboxPlacement
impl Hash for LetterboxPlacement
Source§impl PartialEq for LetterboxPlacement
impl PartialEq for LetterboxPlacement
Source§impl Serialize for LetterboxPlacement
impl Serialize for LetterboxPlacement
impl StructuralPartialEq for LetterboxPlacement
Auto Trait Implementations§
impl Freeze for LetterboxPlacement
impl RefUnwindSafe for LetterboxPlacement
impl Send for LetterboxPlacement
impl Sync for LetterboxPlacement
impl Unpin for LetterboxPlacement
impl UnsafeUnpin for LetterboxPlacement
impl UnwindSafe for LetterboxPlacement
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
impl<ST, DT> CastableFrom<ST, Initialized, Initialized> for DT
impl<ST, DT> CastableFrom<ST, Uninit, Uninit> for DT
Source§impl<T> CloneToUninit for Twhere
T: Clone,
impl<T> CloneToUninit for Twhere
T: Clone,
impl<T> DeserializeOwned for Twhere
T: for<'de> Deserialize<'de>,
Source§impl<T> Instrument for T
impl<T> Instrument for T
Source§fn instrument(self, span: Span) -> Instrumented<Self> ⓘ
fn instrument(self, span: Span) -> Instrumented<Self> ⓘ
Source§fn in_current_span(self) -> Instrumented<Self> ⓘ
fn in_current_span(self) -> Instrumented<Self> ⓘ
Source§impl<T> IntoEither for T
impl<T> IntoEither for T
Source§fn into_either(self, into_left: bool) -> Either<Self, Self> ⓘ
fn into_either(self, into_left: bool) -> Either<Self, Self> ⓘ
self into a Left variant of Either<Self, Self>
if into_left is true.
Converts self into a Right variant of Either<Self, Self>
otherwise. Read moreSource§fn into_either_with<F>(self, into_left: F) -> Either<Self, Self> ⓘ
fn into_either_with<F>(self, into_left: F) -> Either<Self, Self> ⓘ
self into a Left variant of Either<Self, Self>
if into_left(&self) returns true.
Converts self into a Right variant of Either<Self, Self>
otherwise. Read more