Struct style::servo::restyle_damage::ServoRestyleDamage
source · pub struct ServoRestyleDamage(<ServoRestyleDamage as PublicFlags>::Internal);
Expand description
Individual layout actions that may be necessary after restyling.
Tuple Fields§
§0: <ServoRestyleDamage as PublicFlags>::Internal
Implementations§
source§impl ServoRestyleDamage
impl ServoRestyleDamage
sourcepub const REPAINT: Self = _
pub const REPAINT: Self = _
Repaint the node itself.
Currently unused; need to decide how this propagates.
sourcepub const REPOSITION: Self = _
pub const REPOSITION: Self = _
The stacking-context-relative position of this node or its descendants has changed.
Propagates both up and down the flow tree.
sourcepub const STORE_OVERFLOW: Self = _
pub const STORE_OVERFLOW: Self = _
Recompute the overflow regions (bounding box of object and all descendants).
Propagates down the flow tree because the computation is bottom-up.
sourcepub const BUBBLE_ISIZES: Self = _
pub const BUBBLE_ISIZES: Self = _
Recompute intrinsic inline_sizes (minimum and preferred).
Propagates down the flow tree because the computation is. bottom-up.
sourcepub const REFLOW_OUT_OF_FLOW: Self = _
pub const REFLOW_OUT_OF_FLOW: Self = _
Recompute actual inline-sizes and block-sizes, only taking out-of-flow children into account.
Propagates up the flow tree because the computation is top-down.
sourcepub const REFLOW: Self = _
pub const REFLOW: Self = _
Recompute actual inline_sizes and block_sizes.
Propagates up the flow tree because the computation is top-down.
sourcepub const RESOLVE_GENERATED_CONTENT: Self = _
pub const RESOLVE_GENERATED_CONTENT: Self = _
Re-resolve generated content.
Propagates up the flow tree because the computation is inorder.
sourcepub const RECONSTRUCT_FLOW: Self = _
pub const RECONSTRUCT_FLOW: Self = _
The entire flow needs to be reconstructed.
source§impl ServoRestyleDamage
impl ServoRestyleDamage
sourcepub 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.
sourcepub const fn from_bits(bits: u8) -> Option<Self>
pub const fn from_bits(bits: u8) -> Option<Self>
Convert from a bits value.
This method will return None
if any unknown bits are set.
sourcepub const fn from_bits_truncate(bits: u8) -> Self
pub const fn from_bits_truncate(bits: u8) -> Self
Convert from a bits value, unsetting any unknown bits.
sourcepub const fn from_bits_retain(bits: u8) -> Self
pub const fn from_bits_retain(bits: u8) -> Self
Convert from a bits value exactly.
sourcepub fn from_name(name: &str) -> Option<Self>
pub fn from_name(name: &str) -> Option<Self>
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.
sourcepub const fn intersects(&self, other: Self) -> bool
pub const fn intersects(&self, other: Self) -> bool
Whether any set bits in a source flags value are also set in a target flags value.
sourcepub const fn contains(&self, other: Self) -> bool
pub const fn contains(&self, other: Self) -> bool
Whether all set bits in a source flags value are also set in a target flags value.
sourcepub fn remove(&mut self, other: Self)
pub fn remove(&mut self, other: Self)
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.
sourcepub fn toggle(&mut self, other: Self)
pub fn toggle(&mut self, other: Self)
The bitwise exclusive-or (^
) of the bits in two flags values.
sourcepub fn set(&mut self, other: Self, value: bool)
pub fn set(&mut self, other: Self, value: bool)
Call insert
when value
is true
or remove
when value
is false
.
sourcepub const fn intersection(self, other: Self) -> Self
pub const fn intersection(self, other: Self) -> Self
The bitwise and (&
) of the bits in two flags values.
sourcepub const fn union(self, other: Self) -> Self
pub const fn union(self, other: Self) -> Self
The bitwise or (|
) of the bits in two flags values.
sourcepub const fn difference(self, other: Self) -> Self
pub const fn difference(self, other: Self) -> Self
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.
sourcepub const fn symmetric_difference(self, other: Self) -> Self
pub const fn symmetric_difference(self, other: Self) -> Self
The bitwise exclusive-or (^
) of the bits in two flags values.
sourcepub const fn complement(self) -> Self
pub const fn complement(self) -> Self
The bitwise negation (!
) of the bits in a flags value, truncating the result.
source§impl ServoRestyleDamage
impl ServoRestyleDamage
sourcepub const fn iter(&self) -> Iter<ServoRestyleDamage>
pub const fn iter(&self) -> Iter<ServoRestyleDamage>
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.
sourcepub const fn iter_names(&self) -> IterNames<ServoRestyleDamage>
pub const fn iter_names(&self) -> IterNames<ServoRestyleDamage>
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.
source§impl ServoRestyleDamage
impl ServoRestyleDamage
sourcepub fn compute_style_difference(
old: &ComputedValues,
new: &ComputedValues,
) -> StyleDifference
pub fn compute_style_difference( old: &ComputedValues, new: &ComputedValues, ) -> StyleDifference
Compute the StyleDifference
(including the appropriate restyle damage)
for a given style change between old
and new
.
sourcepub fn rebuild_and_reflow() -> ServoRestyleDamage
pub fn rebuild_and_reflow() -> ServoRestyleDamage
Returns a bitmask that represents a flow that needs to be rebuilt and reflowed.
FIXME(bholley): Do we ever actually need this? Shouldn’t RECONSTRUCT_FLOW imply everything else?
sourcepub fn reconstruct() -> ServoRestyleDamage
pub fn reconstruct() -> ServoRestyleDamage
Returns a bitmask indicating that the frame needs to be reconstructed.
sourcepub fn damage_for_parent(
self,
child_is_absolutely_positioned: bool,
) -> ServoRestyleDamage
pub fn damage_for_parent( self, child_is_absolutely_positioned: bool, ) -> ServoRestyleDamage
Supposing a flow has the given position
property and this damage,
returns the damage that we should add to the parent of this flow.
sourcepub fn damage_for_child(
self,
parent_is_absolutely_positioned: bool,
child_is_absolutely_positioned: bool,
) -> ServoRestyleDamage
pub fn damage_for_child( self, parent_is_absolutely_positioned: bool, child_is_absolutely_positioned: bool, ) -> ServoRestyleDamage
Supposing the parent of a flow with the given position
property has
this damage, returns the damage that we should add to this flow.
Trait Implementations§
source§impl Binary for ServoRestyleDamage
impl Binary for ServoRestyleDamage
source§impl BitAnd for ServoRestyleDamage
impl BitAnd for ServoRestyleDamage
source§impl BitAndAssign for ServoRestyleDamage
impl BitAndAssign for ServoRestyleDamage
source§fn bitand_assign(&mut self, other: Self)
fn bitand_assign(&mut self, other: Self)
The bitwise and (&
) of the bits in two flags values.
source§impl BitOr for ServoRestyleDamage
impl BitOr for ServoRestyleDamage
source§fn bitor(self, other: ServoRestyleDamage) -> Self
fn bitor(self, other: ServoRestyleDamage) -> Self
The bitwise or (|
) of the bits in two flags values.
§type Output = ServoRestyleDamage
type Output = ServoRestyleDamage
|
operator.source§impl BitOrAssign for ServoRestyleDamage
impl BitOrAssign for ServoRestyleDamage
source§fn bitor_assign(&mut self, other: Self)
fn bitor_assign(&mut self, other: Self)
The bitwise or (|
) of the bits in two flags values.
source§impl BitXor for ServoRestyleDamage
impl BitXor for ServoRestyleDamage
source§impl BitXorAssign for ServoRestyleDamage
impl BitXorAssign for ServoRestyleDamage
source§fn bitxor_assign(&mut self, other: Self)
fn bitxor_assign(&mut self, other: Self)
The bitwise exclusive-or (^
) of the bits in two flags values.
source§impl Clone for ServoRestyleDamage
impl Clone for ServoRestyleDamage
source§fn clone(&self) -> ServoRestyleDamage
fn clone(&self) -> ServoRestyleDamage
1.0.0 · source§fn clone_from(&mut self, source: &Self)
fn clone_from(&mut self, source: &Self)
source
. Read moresource§impl Debug for ServoRestyleDamage
impl Debug for ServoRestyleDamage
source§impl Default for ServoRestyleDamage
impl Default for ServoRestyleDamage
source§impl Display for ServoRestyleDamage
impl Display for ServoRestyleDamage
source§impl Extend<ServoRestyleDamage> for ServoRestyleDamage
impl Extend<ServoRestyleDamage> for ServoRestyleDamage
source§fn extend<T: IntoIterator<Item = Self>>(&mut self, iterator: T)
fn extend<T: IntoIterator<Item = Self>>(&mut self, iterator: T)
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
)source§impl Flags for ServoRestyleDamage
impl Flags for ServoRestyleDamage
source§const FLAGS: &'static [Flag<ServoRestyleDamage>] = _
const FLAGS: &'static [Flag<ServoRestyleDamage>] = _
source§fn from_bits_retain(bits: u8) -> ServoRestyleDamage
fn from_bits_retain(bits: u8) -> ServoRestyleDamage
source§fn from_bits_truncate(bits: Self::Bits) -> Self
fn from_bits_truncate(bits: Self::Bits) -> Self
source§fn from_name(name: &str) -> Option<Self>
fn from_name(name: &str) -> Option<Self>
source§fn iter_names(&self) -> IterNames<Self>
fn iter_names(&self) -> IterNames<Self>
source§fn intersects(&self, other: Self) -> boolwhere
Self: Sized,
fn intersects(&self, other: Self) -> boolwhere
Self: Sized,
source§fn contains(&self, other: Self) -> boolwhere
Self: Sized,
fn contains(&self, other: Self) -> boolwhere
Self: Sized,
source§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.source§fn remove(&mut self, other: Self)where
Self: Sized,
fn remove(&mut self, other: Self)where
Self: Sized,
&!
). Read moresource§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.source§fn intersection(self, other: Self) -> Self
fn intersection(self, other: Self) -> Self
&
) of the bits in two flags values.source§fn difference(self, other: Self) -> Self
fn difference(self, other: Self) -> Self
&!
). Read moresource§fn symmetric_difference(self, other: Self) -> Self
fn symmetric_difference(self, other: Self) -> Self
^
) of the bits in two flags values.source§fn complement(self) -> Self
fn complement(self) -> Self
!
) of the bits in a flags value, truncating the result.source§impl FromIterator<ServoRestyleDamage> for ServoRestyleDamage
impl FromIterator<ServoRestyleDamage> for ServoRestyleDamage
source§fn from_iter<T: IntoIterator<Item = Self>>(iterator: T) -> Self
fn from_iter<T: IntoIterator<Item = Self>>(iterator: T) -> Self
The bitwise or (|
) of the bits in each flags value.
source§impl IntoIterator for ServoRestyleDamage
impl IntoIterator for ServoRestyleDamage
source§impl LowerHex for ServoRestyleDamage
impl LowerHex for ServoRestyleDamage
source§impl MallocSizeOf for ServoRestyleDamage
impl MallocSizeOf for ServoRestyleDamage
source§fn size_of(&self, _: &mut MallocSizeOfOps) -> usize
fn size_of(&self, _: &mut MallocSizeOfOps) -> usize
source§impl Not for ServoRestyleDamage
impl Not for ServoRestyleDamage
source§impl Octal for ServoRestyleDamage
impl Octal for ServoRestyleDamage
source§impl PartialEq for ServoRestyleDamage
impl PartialEq for ServoRestyleDamage
source§fn eq(&self, other: &ServoRestyleDamage) -> bool
fn eq(&self, other: &ServoRestyleDamage) -> bool
self
and other
values to be equal, and is used
by ==
.source§impl PublicFlags for ServoRestyleDamage
impl PublicFlags for ServoRestyleDamage
source§impl Sub for ServoRestyleDamage
impl Sub for ServoRestyleDamage
source§fn sub(self, other: Self) -> Self
fn sub(self, other: Self) -> Self
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 = ServoRestyleDamage
type Output = ServoRestyleDamage
-
operator.source§impl SubAssign for ServoRestyleDamage
impl SubAssign for ServoRestyleDamage
source§fn sub_assign(&mut self, other: Self)
fn sub_assign(&mut self, other: Self)
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.
source§impl UpperHex for ServoRestyleDamage
impl UpperHex for ServoRestyleDamage
impl Copy for ServoRestyleDamage
impl Eq for ServoRestyleDamage
impl StructuralPartialEq for ServoRestyleDamage
Auto Trait Implementations§
impl Freeze for ServoRestyleDamage
impl RefUnwindSafe for ServoRestyleDamage
impl Send for ServoRestyleDamage
impl Sync for ServoRestyleDamage
impl Unpin for ServoRestyleDamage
impl UnwindSafe for ServoRestyleDamage
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
source§impl<Q, K> Equivalent<K> for Q
impl<Q, K> Equivalent<K> for Q
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
key
and return true
if they are equal.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