Struct layout_2013::construct::InlineBlockSplit
source · pub struct InlineBlockSplit {
pub predecessors: IntermediateInlineFragments,
pub flow: FlowRef,
}
Expand description
Represents an {ib} split that has not yet found the containing block that it belongs to. This is somewhat tricky. An example may be helpful. For this DOM fragment:
<span>
A
<div>B</div>
C
</span>
The resulting ConstructionItem
for the outer span
will be:
ⓘ
ConstructionItem::InlineFragments(
InlineFragmentsConstructionResult {
splits: linked_list![
InlineBlockSplit {
predecessors: IntermediateInlineFragments {
fragments: linked_list![A],
absolute_descendents: AbsoluteDescendents {
descendant_links: vec![]
},
},
flow: B,
}
],
fragments: linked_list![C],
},
)
Fields§
§predecessors: IntermediateInlineFragments
The inline fragments that precede the flow.
flow: FlowRef
The flow that caused this {ib} split.
Implementations§
source§impl InlineBlockSplit
impl InlineBlockSplit
sourcefn new<'dom, ConcreteThreadSafeLayoutNode>(
fragment_accumulator: &mut InlineFragmentsAccumulator,
node: &ConcreteThreadSafeLayoutNode,
style_context: &SharedStyleContext<'_>,
flow: FlowRef,
) -> InlineBlockSplitwhere
ConcreteThreadSafeLayoutNode: ThreadSafeLayoutNode<'dom>,
fn new<'dom, ConcreteThreadSafeLayoutNode>(
fragment_accumulator: &mut InlineFragmentsAccumulator,
node: &ConcreteThreadSafeLayoutNode,
style_context: &SharedStyleContext<'_>,
flow: FlowRef,
) -> InlineBlockSplitwhere
ConcreteThreadSafeLayoutNode: ThreadSafeLayoutNode<'dom>,
Flushes the given accumulator to the new split and makes a new accumulator to hold any subsequent fragments.
Trait Implementations§
source§impl Clone for InlineBlockSplit
impl Clone for InlineBlockSplit
source§fn clone(&self) -> InlineBlockSplit
fn clone(&self) -> InlineBlockSplit
Returns a copy of the value. Read more
1.0.0 · source§fn clone_from(&mut self, source: &Self)
fn clone_from(&mut self, source: &Self)
Performs copy-assignment from
source
. Read moreAuto Trait Implementations§
impl Freeze for InlineBlockSplit
impl !RefUnwindSafe for InlineBlockSplit
impl Send for InlineBlockSplit
impl Sync for InlineBlockSplit
impl Unpin for InlineBlockSplit
impl !UnwindSafe for InlineBlockSplit
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> 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>
Converts
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>
Converts
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 moresource§impl<T> MaybeBoxed<Box<T>> for T
impl<T> MaybeBoxed<Box<T>> for T
source§fn maybe_boxed(self) -> Box<T>
fn maybe_boxed(self) -> Box<T>
Convert
source§impl<T> MaybeBoxed<T> for T
impl<T> MaybeBoxed<T> for T
source§fn maybe_boxed(self) -> T
fn maybe_boxed(self) -> T
Convert