Struct layout_2013::table_colgroup::TableColGroupFlow
source · #[repr(C)]pub struct TableColGroupFlow {
pub base: BaseFlow,
pub fragment: Option<Fragment>,
pub cols: Vec<Fragment>,
pub inline_sizes: Vec<Size>,
}
Expand description
A table formatting context.
Fields§
§base: BaseFlow
Data common to all flows.
fragment: Option<Fragment>
The associated fragment.
cols: Vec<Fragment>
The table column fragments
inline_sizes: Vec<Size>
The specified inline-sizes of table columns. (We use LengthPercentageOrAuto
here in
lieu of ColumnInlineSize
because column groups do not establish minimum or preferred
inline sizes.)
Implementations§
source§impl TableColGroupFlow
impl TableColGroupFlow
pub fn from_fragments( fragment: Fragment, fragments: Vec<Fragment>, ) -> TableColGroupFlow
Trait Implementations§
source§impl Debug for TableColGroupFlow
impl Debug for TableColGroupFlow
source§impl Flow for TableColGroupFlow
impl Flow for TableColGroupFlow
source§fn assign_inline_sizes(&mut self, _: &LayoutContext<'_>)
fn assign_inline_sizes(&mut self, _: &LayoutContext<'_>)
Table column inline-sizes are assigned in the table flow and propagated to table row flows and/or rowgroup flows. Therefore, table colgroup flows do not need to assign inline-sizes.
source§fn assign_block_size(&mut self, _: &LayoutContext<'_>)
fn assign_block_size(&mut self, _: &LayoutContext<'_>)
Table columns do not have block-size.
source§fn as_mut_table_colgroup(&mut self) -> &mut TableColGroupFlow
fn as_mut_table_colgroup(&mut self) -> &mut TableColGroupFlow
If this is a table colgroup flow, returns the underlying object, borrowed mutably. Fails
otherwise.
source§fn as_table_colgroup(&self) -> &TableColGroupFlow
fn as_table_colgroup(&self) -> &TableColGroupFlow
If this is a table colgroup flow, returns the underlying object. Fails
otherwise.
source§fn bubble_inline_sizes(&mut self)
fn bubble_inline_sizes(&mut self)
Pass 1 of reflow: computes minimum and preferred inline-sizes. Read more
source§fn update_late_computed_inline_position_if_necessary(&mut self, _: Au)
fn update_late_computed_inline_position_if_necessary(&mut self, _: Au)
Updates the inline position of a child flow during the assign-height traversal. At present,
this is only used for absolutely-positioned inline-blocks.
source§fn update_late_computed_block_position_if_necessary(&mut self, _: Au)
fn update_late_computed_block_position_if_necessary(&mut self, _: Au)
Updates the block position of a child flow during the assign-height traversal. At present,
this is only used for absolutely-positioned inline-blocks.
source§fn build_display_list(&mut self, _: &mut DisplayListBuildState<'_>)
fn build_display_list(&mut self, _: &mut DisplayListBuildState<'_>)
Phase 5 of reflow: builds display lists.
fn collect_stacking_contexts( &mut self, state: &mut StackingContextCollectionState, )
source§fn repair_style(&mut self, _: &Arc<ComputedValues>)
fn repair_style(&mut self, _: &Arc<ComputedValues>)
Attempts to perform incremental fixup of this flow by replacing its fragment’s style with
the new style. This can only succeed if the flow has exactly one fragment.
source§fn compute_overflow(&self) -> Overflow
fn compute_overflow(&self) -> Overflow
Returns the union of all overflow rects of all of this flow’s fragments.
source§fn generated_containing_block_size(&self, _: OpaqueFlow) -> LogicalSize<Au>
fn generated_containing_block_size(&self, _: OpaqueFlow) -> LogicalSize<Au>
Return the size of the containing block generated by this flow for the absolutely-
positioned descendant referenced by
for_flow
. For block flows, this is the padding box. Read moresource§fn iterate_through_fragment_border_boxes(
&self,
_: &mut dyn FragmentBorderBoxIterator,
_: i32,
_: &Point2D<Au>,
)
fn iterate_through_fragment_border_boxes( &self, _: &mut dyn FragmentBorderBoxIterator, _: i32, _: &Point2D<Au>, )
Iterates through border boxes of all of this flow’s fragments.
Level provides a zero based index indicating the current
depth of the flow tree during fragment iteration.
source§fn mutate_fragments(&mut self, _: &mut dyn FnMut(&mut Fragment))
fn mutate_fragments(&mut self, _: &mut dyn FnMut(&mut Fragment))
Mutably iterates through fragments in this flow.
source§fn as_block(&self) -> &BlockFlow
fn as_block(&self) -> &BlockFlow
If this is a block flow, returns the underlying object. Fails otherwise.
source§fn as_mut_block(&mut self) -> &mut BlockFlow
fn as_mut_block(&mut self) -> &mut BlockFlow
If this is a block flow, returns the underlying object, borrowed mutably. Fails otherwise.
source§fn as_flex(&self) -> &FlexFlow
fn as_flex(&self) -> &FlexFlow
If this is a flex flow, returns the underlying object. Fails otherwise.
source§fn as_inline(&self) -> &InlineFlow
fn as_inline(&self) -> &InlineFlow
If this is an inline flow, returns the underlying object. Fails otherwise.
source§fn as_mut_inline(&mut self) -> &mut InlineFlow
fn as_mut_inline(&mut self) -> &mut InlineFlow
If this is an inline flow, returns the underlying object, borrowed mutably. Fails
otherwise.
source§fn as_table_wrapper(&self) -> &TableWrapperFlow
fn as_table_wrapper(&self) -> &TableWrapperFlow
If this is a table wrapper flow, returns the underlying object. Fails otherwise.
source§fn as_mut_table(&mut self) -> &mut TableFlow
fn as_mut_table(&mut self) -> &mut TableFlow
If this is a table flow, returns the underlying object, borrowed mutably. Fails otherwise.
source§fn as_table(&self) -> &TableFlow
fn as_table(&self) -> &TableFlow
If this is a table flow, returns the underlying object. Fails otherwise.
source§fn as_mut_table_rowgroup(&mut self) -> &mut TableRowGroupFlow
fn as_mut_table_rowgroup(&mut self) -> &mut TableRowGroupFlow
If this is a table rowgroup flow, returns the underlying object, borrowed mutably. Fails
otherwise.
source§fn as_table_rowgroup(&self) -> &TableRowGroupFlow
fn as_table_rowgroup(&self) -> &TableRowGroupFlow
If this is a table rowgroup flow, returns the underlying object. Fails otherwise.
source§fn as_mut_table_row(&mut self) -> &mut TableRowFlow
fn as_mut_table_row(&mut self) -> &mut TableRowFlow
If this is a table row flow, returns the underlying object, borrowed mutably. Fails
otherwise.
source§fn as_table_row(&self) -> &TableRowFlow
fn as_table_row(&self) -> &TableRowFlow
If this is a table row flow, returns the underlying object. Fails otherwise.
source§fn as_mut_table_cell(&mut self) -> &mut TableCellFlow
fn as_mut_table_cell(&mut self) -> &mut TableCellFlow
If this is a table cell flow, returns the underlying object, borrowed mutably. Fails
otherwise.
source§fn as_table_cell(&self) -> &TableCellFlow
fn as_table_cell(&self) -> &TableCellFlow
If this is a table cell flow, returns the underlying object. Fails otherwise.
source§fn fragment(
&mut self,
layout_context: &LayoutContext<'_>,
_fragmentation_context: Option<FragmentationContext>,
) -> Option<Arc<dyn Flow>>
fn fragment( &mut self, layout_context: &LayoutContext<'_>, _fragmentation_context: Option<FragmentationContext>, ) -> Option<Arc<dyn Flow>>
Like
assign_block_size
, but is recurses explicitly into descendants.
Fit as much content as possible within available_block_size
.
If that’s not all of it, truncate the contents of self
and return a new flow similar to self
with the rest of the content. Read moresource§fn place_float_if_applicable(&mut self)
fn place_float_if_applicable(&mut self)
If this is a float, places it. The default implementation does nothing.
source§fn assign_block_size_for_inorder_child_if_necessary(
&mut self,
layout_context: &LayoutContext<'_>,
parent_thread_id: u8,
_content_box: LogicalRect<Au>,
) -> bool
fn assign_block_size_for_inorder_child_if_necessary( &mut self, layout_context: &LayoutContext<'_>, parent_thread_id: u8, _content_box: LogicalRect<Au>, ) -> bool
Assigns block-sizes in-order; or, if this is a float, places the float. The default
implementation simply assigns block-sizes if this flow might have floats in. Returns true
if it was determined that this child might have had floats in or false otherwise. Read more
fn has_non_invertible_transform_or_zero_scale(&self) -> bool
fn get_overflow_in_parent_coordinates(&self) -> Overflow
source§fn store_overflow(&mut self, _: &LayoutContext<'_>)
fn store_overflow(&mut self, _: &LayoutContext<'_>)
CSS Section 11.1
This is the union of rectangles of the flows for which we define the
Containing Block. Read more
source§fn compute_stacking_relative_position(&mut self, _: &LayoutContext<'_>)
fn compute_stacking_relative_position(&mut self, _: &LayoutContext<'_>)
Phase 4 of reflow: Compute the stacking-relative position (origin of the content box,
in coordinates relative to the nearest ancestor stacking context).
source§fn mark_as_root(&mut self)
fn mark_as_root(&mut self)
Marks this flow as the root flow. The default implementation is a no-op.
fn is_root(&self) -> bool
source§fn positioning(&self) -> Position
fn positioning(&self) -> Position
The ‘position’ property of this flow.
fn contains_positioned_fragments(&self) -> bool
fn contains_relatively_positioned_fragments(&self) -> bool
source§fn is_absolute_containing_block(&self) -> bool
fn is_absolute_containing_block(&self) -> bool
Returns true if this is an absolute containing block.
source§fn contains_roots_of_absolute_flow_tree(&self) -> bool
fn contains_roots_of_absolute_flow_tree(&self) -> bool
Returns true if this flow contains fragments that are roots of an absolute flow tree.
source§fn print_extra_flow_children(&self, _: &mut PrintTree)
fn print_extra_flow_children(&self, _: &mut PrintTree)
Print any extra children (such as fragments) contained in this Flow
for debugging purposes. Any items inserted into the tree will become
children of this flow.
fn clipping_and_scrolling(&self) -> ClippingAndScrolling
impl HasBaseFlow for TableColGroupFlow
Auto Trait Implementations§
impl !Freeze for TableColGroupFlow
impl !RefUnwindSafe for TableColGroupFlow
impl Send for TableColGroupFlow
impl Sync for TableColGroupFlow
impl Unpin for TableColGroupFlow
impl !UnwindSafe for TableColGroupFlow
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> GetBaseFlow for Twhere
T: HasBaseFlow + ?Sized,
impl<T> GetBaseFlow for Twhere
T: HasBaseFlow + ?Sized,
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