Struct SerializeFlags
pub struct SerializeFlags(/* private fields */);Expand description
Flags used for serialization with a BufferSerializer.
Implementations§
§impl SerializeFlags
impl SerializeFlags
pub const NO_CLUSTERS: SerializeFlags
pub const NO_CLUSTERS: SerializeFlags
Do not serialize glyph cluster.
pub const NO_POSITIONS: SerializeFlags
pub const NO_POSITIONS: SerializeFlags
Do not serialize glyph position information.
pub const NO_GLYPH_NAMES: SerializeFlags
pub const NO_GLYPH_NAMES: SerializeFlags
Do no serialize glyph name.
pub const GLYPH_EXTENTS: SerializeFlags
pub const GLYPH_EXTENTS: SerializeFlags
Serialize glyph extents.
pub const GLYPH_FLAGS: SerializeFlags
pub const GLYPH_FLAGS: SerializeFlags
Serialize glyph flags.
pub const NO_ADVANCES: SerializeFlags
pub const NO_ADVANCES: SerializeFlags
Do not serialize glyph advances, glyph offsets will reflect absolute glyph positions.
pub const DEFINED: SerializeFlags
pub const DEFINED: SerializeFlags
All currently defined flags.
§impl SerializeFlags
impl SerializeFlags
pub const fn empty() -> SerializeFlags
pub const fn empty() -> SerializeFlags
Get a flags value with all bits unset.
pub const fn all() -> SerializeFlags
pub const fn all() -> SerializeFlags
Get a flags value with all known bits set.
pub const fn bits(&self) -> u8
pub const fn bits(&self) -> u8
Get the underlying bits value.
The returned value is exactly the bits set in this flags value.
pub const fn from_bits(bits: u8) -> Option<SerializeFlags>
pub const fn from_bits(bits: u8) -> Option<SerializeFlags>
Convert from a bits value.
This method will return None if any unknown bits are set.
pub const fn from_bits_truncate(bits: u8) -> SerializeFlags
pub const fn from_bits_truncate(bits: u8) -> SerializeFlags
Convert from a bits value, unsetting any unknown bits.
pub const fn from_bits_retain(bits: u8) -> SerializeFlags
pub const fn from_bits_retain(bits: u8) -> SerializeFlags
Convert from a bits value exactly.
pub fn from_name(name: &str) -> Option<SerializeFlags>
pub fn from_name(name: &str) -> Option<SerializeFlags>
Get a flags value with the bits of a flag with the given name set.
This method will return None if name is empty or doesn’t
correspond to any named flag.
pub const fn intersects(&self, other: SerializeFlags) -> bool
pub const fn intersects(&self, other: SerializeFlags) -> bool
Whether any set bits in a source flags value are also set in a target flags value.
pub const fn contains(&self, other: SerializeFlags) -> bool
pub const fn contains(&self, other: SerializeFlags) -> bool
Whether all set bits in a source flags value are also set in a target flags value.
pub fn insert(&mut self, other: SerializeFlags)
pub fn insert(&mut self, other: SerializeFlags)
The bitwise or (|) of the bits in two flags values.
pub fn remove(&mut self, other: SerializeFlags)
pub fn remove(&mut self, other: SerializeFlags)
The intersection of a source flags value with the complement of a target flags
value (&!).
This method is not equivalent to self & !other when other has unknown bits set.
remove won’t truncate other, but the ! operator will.
pub fn toggle(&mut self, other: SerializeFlags)
pub fn toggle(&mut self, other: SerializeFlags)
The bitwise exclusive-or (^) of the bits in two flags values.
pub fn set(&mut self, other: SerializeFlags, value: bool)
pub fn set(&mut self, other: SerializeFlags, value: bool)
Call insert when value is true or remove when value is false.
pub const fn intersection(self, other: SerializeFlags) -> SerializeFlags
pub const fn intersection(self, other: SerializeFlags) -> SerializeFlags
The bitwise and (&) of the bits in two flags values.
pub const fn union(self, other: SerializeFlags) -> SerializeFlags
pub const fn union(self, other: SerializeFlags) -> SerializeFlags
The bitwise or (|) of the bits in two flags values.
pub const fn difference(self, other: SerializeFlags) -> SerializeFlags
pub const fn difference(self, other: SerializeFlags) -> SerializeFlags
The intersection of a source flags value with the complement of a target flags
value (&!).
This method is not equivalent to self & !other when other has unknown bits set.
difference won’t truncate other, but the ! operator will.
pub const fn symmetric_difference(self, other: SerializeFlags) -> SerializeFlags
pub const fn symmetric_difference(self, other: SerializeFlags) -> SerializeFlags
The bitwise exclusive-or (^) of the bits in two flags values.
pub const fn complement(self) -> SerializeFlags
pub const fn complement(self) -> SerializeFlags
The bitwise negation (!) of the bits in a flags value, truncating the result.
§impl SerializeFlags
impl SerializeFlags
pub const fn iter(&self) -> Iter<SerializeFlags>
pub const fn iter(&self) -> Iter<SerializeFlags>
Yield a set of contained flags values.
Each yielded flags value will correspond to a defined named flag. Any unknown bits will be yielded together as a final flags value.
pub const fn iter_names(&self) -> IterNames<SerializeFlags>
pub const fn iter_names(&self) -> IterNames<SerializeFlags>
Yield a set of contained named flags values.
This method is like iter, except only yields bits in contained named flags.
Any unknown bits, or bits not corresponding to a contained flag will not be yielded.
Trait Implementations§
§impl Binary for SerializeFlags
impl Binary for SerializeFlags
§impl BitAnd for SerializeFlags
impl BitAnd for SerializeFlags
§fn bitand(self, other: SerializeFlags) -> SerializeFlags
fn bitand(self, other: SerializeFlags) -> SerializeFlags
The bitwise and (&) of the bits in two flags values.
§type Output = SerializeFlags
type Output = SerializeFlags
& operator.§impl BitAndAssign for SerializeFlags
impl BitAndAssign for SerializeFlags
§fn bitand_assign(&mut self, other: SerializeFlags)
fn bitand_assign(&mut self, other: SerializeFlags)
The bitwise and (&) of the bits in two flags values.
§impl BitOr for SerializeFlags
impl BitOr for SerializeFlags
§fn bitor(self, other: SerializeFlags) -> SerializeFlags
fn bitor(self, other: SerializeFlags) -> SerializeFlags
The bitwise or (|) of the bits in two flags values.
§type Output = SerializeFlags
type Output = SerializeFlags
| operator.§impl BitOrAssign for SerializeFlags
impl BitOrAssign for SerializeFlags
§fn bitor_assign(&mut self, other: SerializeFlags)
fn bitor_assign(&mut self, other: SerializeFlags)
The bitwise or (|) of the bits in two flags values.
§impl BitXor for SerializeFlags
impl BitXor for SerializeFlags
§fn bitxor(self, other: SerializeFlags) -> SerializeFlags
fn bitxor(self, other: SerializeFlags) -> SerializeFlags
The bitwise exclusive-or (^) of the bits in two flags values.
§type Output = SerializeFlags
type Output = SerializeFlags
^ operator.§impl BitXorAssign for SerializeFlags
impl BitXorAssign for SerializeFlags
§fn bitxor_assign(&mut self, other: SerializeFlags)
fn bitxor_assign(&mut self, other: SerializeFlags)
The bitwise exclusive-or (^) of the bits in two flags values.
§impl Default for SerializeFlags
impl Default for SerializeFlags
§fn default() -> SerializeFlags
fn default() -> SerializeFlags
§impl Extend<SerializeFlags> for SerializeFlags
impl Extend<SerializeFlags> for SerializeFlags
§fn extend<T>(&mut self, iterator: T)where
T: IntoIterator<Item = SerializeFlags>,
fn extend<T>(&mut self, iterator: T)where
T: IntoIterator<Item = SerializeFlags>,
The bitwise or (|) of the bits in each flags value.
Source§fn extend_one(&mut self, item: A)
fn extend_one(&mut self, item: A)
extend_one)Source§fn extend_reserve(&mut self, additional: usize)
fn extend_reserve(&mut self, additional: usize)
extend_one)§impl Flags for SerializeFlags
impl Flags for SerializeFlags
§const FLAGS: &'static [Flag<SerializeFlags>]
const FLAGS: &'static [Flag<SerializeFlags>]
§fn from_bits_retain(bits: u8) -> SerializeFlags
fn from_bits_retain(bits: u8) -> SerializeFlags
§fn known_bits(&self) -> Self::Bits
fn known_bits(&self) -> Self::Bits
§fn unknown_bits(&self) -> Self::Bits
fn unknown_bits(&self) -> Self::Bits
§fn contains_unknown_bits(&self) -> bool
fn contains_unknown_bits(&self) -> bool
true if any unknown bits are set.§fn from_bits_truncate(bits: Self::Bits) -> Self
fn from_bits_truncate(bits: Self::Bits) -> Self
§fn from_name(name: &str) -> Option<Self>
fn from_name(name: &str) -> Option<Self>
§fn iter_names(&self) -> IterNames<Self>
fn iter_names(&self) -> IterNames<Self>
§fn iter_defined_names() -> IterDefinedNames<Self>
fn iter_defined_names() -> IterDefinedNames<Self>
Self::FLAGS].§fn intersects(&self, other: Self) -> boolwhere
Self: Sized,
fn intersects(&self, other: Self) -> boolwhere
Self: Sized,
§fn contains(&self, other: Self) -> boolwhere
Self: Sized,
fn contains(&self, other: Self) -> boolwhere
Self: Sized,
§fn insert(&mut self, other: Self)where
Self: Sized,
fn insert(&mut self, other: Self)where
Self: Sized,
|) of the bits in two flags values.§fn remove(&mut self, other: Self)where
Self: Sized,
fn remove(&mut self, other: Self)where
Self: Sized,
&!). Read more§fn toggle(&mut self, other: Self)where
Self: Sized,
fn toggle(&mut self, other: Self)where
Self: Sized,
^) of the bits in two flags values.§fn set(&mut self, other: Self, value: bool)where
Self: Sized,
fn set(&mut self, other: Self, value: bool)where
Self: Sized,
Flags::insert] when value is true or [Flags::remove] when value is false.§fn intersection(self, other: Self) -> Self
fn intersection(self, other: Self) -> Self
&) of the bits in two flags values.§fn difference(self, other: Self) -> Self
fn difference(self, other: Self) -> Self
&!). Read more§fn symmetric_difference(self, other: Self) -> Self
fn symmetric_difference(self, other: Self) -> Self
^) of the bits in two flags values.§fn complement(self) -> Self
fn complement(self) -> Self
!) of the bits in a flags value, truncating the result.§impl FromIterator<SerializeFlags> for SerializeFlags
impl FromIterator<SerializeFlags> for SerializeFlags
§fn from_iter<T>(iterator: T) -> SerializeFlagswhere
T: IntoIterator<Item = SerializeFlags>,
fn from_iter<T>(iterator: T) -> SerializeFlagswhere
T: IntoIterator<Item = SerializeFlags>,
The bitwise or (|) of the bits in each flags value.
§impl IntoIterator for SerializeFlags
impl IntoIterator for SerializeFlags
§type Item = SerializeFlags
type Item = SerializeFlags
§type IntoIter = Iter<SerializeFlags>
type IntoIter = Iter<SerializeFlags>
§fn into_iter(self) -> <SerializeFlags as IntoIterator>::IntoIter
fn into_iter(self) -> <SerializeFlags as IntoIterator>::IntoIter
§impl LowerHex for SerializeFlags
impl LowerHex for SerializeFlags
§impl Not for SerializeFlags
impl Not for SerializeFlags
§fn not(self) -> SerializeFlags
fn not(self) -> SerializeFlags
The bitwise negation (!) of the bits in a flags value, truncating the result.
§type Output = SerializeFlags
type Output = SerializeFlags
! operator.§impl Octal for SerializeFlags
impl Octal for SerializeFlags
§impl Sub for SerializeFlags
impl Sub for SerializeFlags
§fn sub(self, other: SerializeFlags) -> SerializeFlags
fn sub(self, other: SerializeFlags) -> SerializeFlags
The intersection of a source flags value with the complement of a target flags value (&!).
This method is not equivalent to self & !other when other has unknown bits set.
difference won’t truncate other, but the ! operator will.
§type Output = SerializeFlags
type Output = SerializeFlags
- operator.§impl SubAssign for SerializeFlags
impl SubAssign for SerializeFlags
§fn sub_assign(&mut self, other: SerializeFlags)
fn sub_assign(&mut self, other: SerializeFlags)
The intersection of a source flags value with the complement of a target flags value (&!).
This method is not equivalent to self & !other when other has unknown bits set.
difference won’t truncate other, but the ! operator will.
Auto Trait Implementations§
impl Freeze for SerializeFlags
impl RefUnwindSafe for SerializeFlags
impl Send for SerializeFlags
impl Sync for SerializeFlags
impl Unpin for SerializeFlags
impl UnsafeUnpin for SerializeFlags
impl UnwindSafe for SerializeFlags
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<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>
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>
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)
&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)
&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> 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> 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