pub struct EntryFormat { /* private fields */ }
Expand description

Entry format for a DeltaSetIndexMap.

Implementations§

source§

impl EntryFormat

source

pub const INNER_INDEX_BIT_COUNT_MASK: EntryFormat = Self{ bits: 15,}

Mask for the low 4 bits, which give the count of bits minus one that are used in each entry for the inner-level index.

source

pub const MAP_ENTRY_SIZE_MASK: EntryFormat = Self{ bits: 48,}

Mask for bits that indicate the size in bytes minus one of each entry.

source§

impl EntryFormat

source

pub const fn empty() -> EntryFormat

Returns an empty set of flags.

source

pub const fn all() -> EntryFormat

Returns the set containing all flags.

source

pub const fn bits(&self) -> u8

Returns the raw value of the flags currently stored.

source

pub const fn from_bits(bits: u8) -> Option<EntryFormat>

Convert from underlying bit representation, unless that representation contains bits that do not correspond to a flag.

source

pub const fn from_bits_truncate(bits: u8) -> EntryFormat

Convert from underlying bit representation, dropping any bits that do not correspond to flags.

source

pub const fn is_empty(&self) -> bool

Returns true if no flags are currently stored.

source

pub const fn intersects(&self, other: EntryFormat) -> bool

Returns true if there are flags common to both self and other.

source

pub const fn contains(&self, other: EntryFormat) -> bool

Returns true if all of the flags in other are contained within self.

source

pub fn insert(&mut self, other: EntryFormat)

Inserts the specified flags in-place.

source

pub fn remove(&mut self, other: EntryFormat)

Removes the specified flags in-place.

source

pub fn toggle(&mut self, other: EntryFormat)

Toggles the specified flags in-place.

source

pub const fn intersection(self, other: EntryFormat) -> EntryFormat

Returns the intersection between the flags in self and other.

Specifically, the returned set contains only the flags which are present in both self and other.

This is equivalent to using the & operator (e.g. ops::BitAnd), as in flags & other.

source

pub const fn union(self, other: EntryFormat) -> EntryFormat

Returns the union of between the flags in self and other.

Specifically, the returned set contains all flags which are present in either self or other, including any which are present in both.

This is equivalent to using the | operator (e.g. ops::BitOr), as in flags | other.

source

pub const fn difference(self, other: EntryFormat) -> EntryFormat

Returns the difference between the flags in self and other.

Specifically, the returned set contains all flags present in self, except for the ones present in other.

It is also conceptually equivalent to the “bit-clear” operation: flags & !other (and this syntax is also supported).

This is equivalent to using the - operator (e.g. ops::Sub), as in flags - other.

source§

impl EntryFormat

source

pub fn entry_size(self) -> u8

source

pub fn bit_count(self) -> u8

Trait Implementations§

source§

impl Binary for EntryFormat

source§

fn fmt(&self, f: &mut Formatter<'_>) -> Result<(), Error>

Formats the value using the given formatter.
source§

impl BitAnd<EntryFormat> for EntryFormat

source§

fn bitand(self, other: EntryFormat) -> EntryFormat

Returns the intersection between the two sets of flags.

§

type Output = EntryFormat

The resulting type after applying the & operator.
source§

impl BitAndAssign<EntryFormat> for EntryFormat

source§

fn bitand_assign(&mut self, other: EntryFormat)

Disables all flags disabled in the set.

source§

impl BitOr<EntryFormat> for EntryFormat

source§

fn bitor(self, other: EntryFormat) -> EntryFormat

Returns the union of the two sets of flags.

§

type Output = EntryFormat

The resulting type after applying the | operator.
source§

impl BitOrAssign<EntryFormat> for EntryFormat

source§

fn bitor_assign(&mut self, other: EntryFormat)

Adds the set of flags.

source§

impl BitXor<EntryFormat> for EntryFormat

source§

fn bitxor(self, other: EntryFormat) -> EntryFormat

Returns the left flags, but with all the right flags toggled.

§

type Output = EntryFormat

The resulting type after applying the ^ operator.
source§

impl BitXorAssign<EntryFormat> for EntryFormat

source§

fn bitxor_assign(&mut self, other: EntryFormat)

Toggles the set of flags.

source§

impl Clone for EntryFormat

source§

fn clone(&self) -> EntryFormat

Returns a copy of the value. Read more
1.0.0 · source§

fn clone_from(&mut self, source: &Self)

Performs copy-assignment from source. Read more
source§

impl Debug for EntryFormat

source§

fn fmt(&self, f: &mut Formatter<'_>) -> Result<(), Error>

Formats the value using the given formatter. Read more
source§

impl Default for EntryFormat

source§

fn default() -> EntryFormat

Returns the “default value” for a type. Read more
source§

impl FontWrite for EntryFormat

source§

fn write_into(&self, writer: &mut TableWriter)

Write our data and information about offsets into this TableWriter.
source§

fn name(&self) -> &'static str

source§

impl Hash for EntryFormat

source§

fn hash<__H>(&self, state: &mut __H)where __H: Hasher,

Feeds this value into the given Hasher. Read more
1.3.0 · source§

fn hash_slice<H>(data: &[Self], state: &mut H)where H: Hasher, Self: Sized,

Feeds a slice of this type into the given Hasher. Read more
source§

impl LowerHex for EntryFormat

source§

fn fmt(&self, f: &mut Formatter<'_>) -> Result<(), Error>

Formats the value using the given formatter.
source§

impl Not for EntryFormat

source§

fn not(self) -> EntryFormat

Returns the complement of this set of flags.

§

type Output = EntryFormat

The resulting type after applying the ! operator.
source§

impl Octal for EntryFormat

source§

fn fmt(&self, f: &mut Formatter<'_>) -> Result<(), Error>

Formats the value using the given formatter.
source§

impl Ord for EntryFormat

source§

fn cmp(&self, other: &EntryFormat) -> Ordering

This method returns an Ordering between self and other. Read more
1.21.0 · source§

fn max(self, other: Self) -> Selfwhere Self: Sized,

Compares and returns the maximum of two values. Read more
1.21.0 · source§

fn min(self, other: Self) -> Selfwhere Self: Sized,

Compares and returns the minimum of two values. Read more
1.50.0 · source§

fn clamp(self, min: Self, max: Self) -> Selfwhere Self: Sized + PartialOrd<Self>,

Restrict a value to a certain interval. Read more
source§

impl PartialEq<EntryFormat> for EntryFormat

source§

fn eq(&self, other: &EntryFormat) -> bool

This method tests for self and other values to be equal, and is used by ==.
1.0.0 · source§

fn ne(&self, other: &Rhs) -> bool

This method tests for !=. The default implementation is almost always sufficient, and should not be overridden without very good reason.
source§

impl PartialOrd<EntryFormat> for EntryFormat

source§

fn partial_cmp(&self, other: &EntryFormat) -> Option<Ordering>

This method returns an ordering between self and other values if one exists. Read more
1.0.0 · source§

fn lt(&self, other: &Rhs) -> bool

This method tests less than (for self and other) and is used by the < operator. Read more
1.0.0 · source§

fn le(&self, other: &Rhs) -> bool

This method tests less than or equal to (for self and other) and is used by the <= operator. Read more
1.0.0 · source§

fn gt(&self, other: &Rhs) -> bool

This method tests greater than (for self and other) and is used by the > operator. Read more
1.0.0 · source§

fn ge(&self, other: &Rhs) -> bool

This method tests greater than or equal to (for self and other) and is used by the >= operator. Read more
source§

impl Scalar for EntryFormat

§

type Raw = <u8 as Scalar>::Raw

The raw byte representation of this type.
source§

fn to_raw(self) -> <EntryFormat as Scalar>::Raw

Encode this type as raw big-endian bytes
source§

fn from_raw(raw: <EntryFormat as Scalar>::Raw) -> EntryFormat

Create an instance of this type from raw big-endian bytes
source§

impl Sub<EntryFormat> for EntryFormat

source§

fn sub(self, other: EntryFormat) -> EntryFormat

Returns the set difference of the two sets of flags.

§

type Output = EntryFormat

The resulting type after applying the - operator.
source§

impl SubAssign<EntryFormat> for EntryFormat

source§

fn sub_assign(&mut self, other: EntryFormat)

Disables all flags enabled in the set.

source§

impl UpperHex for EntryFormat

source§

fn fmt(&self, f: &mut Formatter<'_>) -> Result<(), Error>

Formats the value using the given formatter.
source§

impl Copy for EntryFormat

source§

impl Eq for EntryFormat

source§

impl StructuralEq for EntryFormat

source§

impl StructuralPartialEq for EntryFormat

Auto Trait Implementations§

Blanket Implementations§

source§

impl<T> Any for Twhere T: 'static + ?Sized,

source§

fn type_id(&self) -> TypeId

Gets the TypeId of self. Read more
source§

impl<T> Borrow<T> for Twhere T: ?Sized,

source§

fn borrow(&self) -> &T

Immutably borrows from an owned value. Read more
source§

impl<T> BorrowMut<T> for Twhere T: ?Sized,

source§

fn borrow_mut(&mut self) -> &mut T

Mutably borrows from an owned value. Read more
source§

impl<T> FixedSize for Twhere T: Scalar, <T as Scalar>::Raw: FixedSize,

source§

const RAW_BYTE_LEN: usize = <<T as Scalar>::Raw>::RAW_BYTE_LEN

The raw size of this type, in bytes. Read more
source§

impl<T> From<T> for T

source§

fn from(t: T) -> T

Returns the argument unchanged.

source§

impl<T> FromObjRef<BigEndian<T>> for Twhere T: Scalar, BigEndian<T>: Copy,

source§

fn from_obj_ref(from: &BigEndian<T>, _: FontData<'_>) -> T

Convert from to an instance of Self, using the provided data to resolve offsets.
source§

impl<T, U> Into<U> for Twhere U: From<T>,

source§

fn into(self) -> U

Calls U::from(self).

That is, this conversion is whatever the implementation of From<T> for U chooses to do.

source§

impl<T> ReadScalar for Twhere T: Scalar + FixedSize, <T as Scalar>::Raw: ReadScalar,

source§

fn read(bytes: &[u8]) -> Option<T>

Interpret the provided bytes as Self, if they are the right length. Read more
source§

impl<T> ToOwned for Twhere T: Clone,

§

type Owned = T

The resulting type after obtaining ownership.
source§

fn to_owned(&self) -> T

Creates owned data from borrowed data, usually by cloning. Read more
source§

fn clone_into(&self, target: &mut T)

Uses borrowed data to replace owned data, usually by cloning. Read more
source§

impl<U, T> ToOwnedObj<U> for Twhere U: FromObjRef<T>,

source§

fn to_owned_obj(&self, data: FontData<'_>) -> U

Convert this type into T, using the provided data to resolve any offsets.
source§

impl<U, T> ToOwnedTable<U> for Twhere U: FromTableRef<T>,

source§

fn to_owned_table(&self) -> U

source§

impl<T, U> TryFrom<U> for Twhere U: Into<T>,

§

type Error = Infallible

The type returned in the event of a conversion error.
source§

fn try_from(value: U) -> Result<T, <T as TryFrom<U>>::Error>

Performs the conversion.
source§

impl<T, U> TryInto<U> for Twhere U: TryFrom<T>,

§

type Error = <U as TryFrom<T>>::Error

The type returned in the event of a conversion error.
source§

fn try_into(self) -> Result<U, <U as TryFrom<T>>::Error>

Performs the conversion.