Struct layout_2013::table_cell::TableCellFlow

source ·
#[repr(C)]
pub struct TableCellFlow { pub block_flow: BlockFlow, pub collapsed_borders: CollapsedBordersForCell, pub column_span: u32, pub row_span: u32, pub visible: bool, }
Expand description

A table formatting context.

Fields§

§block_flow: BlockFlow

Data common to all block flows.

§collapsed_borders: CollapsedBordersForCell

Border collapse information for the cell.

§column_span: u32

The column span of this cell.

§row_span: u32

The rows spanned by this cell.

§visible: bool

Whether this cell is visible. If false, the value of empty-cells means that we must not display this cell.

Implementations§

source§

impl TableCellFlow

source

pub fn from_fragment(fragment: Fragment) -> TableCellFlow

source

pub fn from_node_fragment_and_visibility_flag<'dom>( node: &impl ThreadSafeLayoutNode<'dom>, fragment: Fragment, visible: bool, ) -> TableCellFlow

source

pub fn fragment(&mut self) -> &Fragment

source

pub fn mut_fragment(&mut self) -> &mut Fragment

source

fn assign_block_size_table_cell_base( &mut self, layout_context: &LayoutContext<'_>, )

Assign block-size for table-cell flow.

inline(always) because this is only ever called by in-order or non-in-order top-level methods.

source

pub fn valign_children(&mut self)

Position this cell’s children according to vertical-align.

source

pub fn total_block_size(&mut self) -> Au

Trait Implementations§

source§

impl Debug for TableCellFlow

source§

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

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

impl Flow for TableCellFlow

source§

fn bubble_inline_sizes(&mut self)

Minimum/preferred inline-sizes set by this function are used in automatic table layout calculation.

source§

fn assign_inline_sizes(&mut self, layout_context: &LayoutContext<'_>)

Recursively (top-down) determines the actual inline-size of child contexts and fragments. When called on this context, the context has had its inline-size set by the parent table row.

source§

fn class(&self) -> FlowClass

Returns the class of flow that this is.
source§

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

If this is a table cell flow, returns the underlying object. Fails otherwise.
source§

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_block(&self) -> &BlockFlow

If this is a block flow, returns the underlying object. Fails otherwise.
source§

fn assign_block_size(&mut self, layout_context: &LayoutContext<'_>)

Pass 3a of reflow: computes block-size.
source§

fn compute_stacking_relative_position( &mut self, layout_context: &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 update_late_computed_inline_position_if_necessary( &mut self, inline_position: 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, block_position: 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<'_>)

Phase 5 of reflow: builds display lists.
source§

fn collect_stacking_contexts( &mut self, state: &mut StackingContextCollectionState, )

source§

fn repair_style(&mut self, new_style: &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

Returns the union of all overflow rects of all of this flow’s fragments.
source§

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 is_absolute_containing_block(&self) -> bool

Returns true if this is an absolute containing block.
source§

fn generated_containing_block_size(&self, flow: 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 more
source§

fn iterate_through_fragment_border_boxes( &self, iterator: &mut dyn FragmentBorderBoxIterator, level: i32, stacking_context_position: &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, mutator: &mut dyn FnMut(&mut Fragment))

Mutably iterates through fragments in this flow.
source§

fn print_extra_flow_children(&self, print_tree: &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.
source§

fn as_flex(&self) -> &FlexFlow

If this is a flex flow, returns the underlying object. Fails otherwise.
source§

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

If this is an inline flow, returns the underlying object, borrowed mutably. Fails otherwise.
source§

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

If this is a table flow, returns the underlying object, borrowed mutably. Fails otherwise.
source§

fn as_table(&self) -> &TableFlow

If this is a table flow, returns the underlying object. Fails otherwise.
source§

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

If this is a table colgroup flow, returns the underlying object. Fails otherwise.
source§

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

If this is a table rowgroup flow, returns the underlying object. Fails otherwise.
source§

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

If this is a table row flow, returns the underlying object. Fails otherwise.
source§

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 more
source§

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

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
source§

fn has_non_invertible_transform_or_zero_scale(&self) -> bool

source§

fn get_overflow_in_parent_coordinates(&self) -> Overflow

source§

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 mark_as_root(&mut self)

Marks this flow as the root flow. The default implementation is a no-op.
source§

fn is_root(&self) -> bool

source§

fn positioning(&self) -> Position

The ‘position’ property of this flow.
source§

fn is_fixed(&self) -> bool

Return true if this flow has position ‘fixed’.
source§

fn contains_positioned_fragments(&self) -> bool

source§

fn contains_relatively_positioned_fragments(&self) -> bool

source§

fn clipping_and_scrolling(&self) -> ClippingAndScrolling

source§

impl Serialize for TableCellFlow

source§

fn serialize<__S>(&self, __serializer: __S) -> Result<__S::Ok, __S::Error>
where __S: Serializer,

Serialize this value into the given Serde serializer. Read more
source§

impl HasBaseFlow for TableCellFlow

Auto Trait Implementations§

Blanket Implementations§

source§

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

source§

fn type_id(&self) -> TypeId

Gets the TypeId of self. Read more
source§

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

source§

fn borrow(&self) -> &T

Immutably borrows from an owned value. Read more
source§

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

source§

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

Mutably borrows from an owned value. Read more
source§

impl<T> Downcast<T> for T

source§

fn downcast(&self) -> &T

source§

impl<T> From<T> for T

source§

fn from(t: T) -> T

Returns the argument unchanged.

source§

impl<T> GetBaseFlow for T
where T: HasBaseFlow + ?Sized,

source§

fn base(&self) -> &BaseFlow

source§

fn mut_base(&mut self) -> &mut BaseFlow

source§

impl<T> Instrument for T

source§

fn instrument(self, span: Span) -> Instrumented<Self>

Instruments this type with the provided Span, returning an Instrumented wrapper. Read more
source§

fn in_current_span(self) -> Instrumented<Self>

Instruments this type with the current Span, returning an Instrumented wrapper. Read more
source§

impl<T, U> Into<U> for T
where 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> IntoEither for T

source§

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 more
source§

fn into_either_with<F>(self, into_left: F) -> Either<Self, Self>
where F: FnOnce(&Self) -> bool,

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 more
source§

impl<T> MaybeBoxed<Box<T>> for T

source§

fn maybe_boxed(self) -> Box<T>

Convert
source§

impl<T> MaybeBoxed<T> for T

source§

fn maybe_boxed(self) -> T

Convert
source§

impl<T> Pointable for T

source§

const ALIGN: usize = _

The alignment of pointer.
§

type Init = T

The type for initializers.
source§

unsafe fn init(init: <T as Pointable>::Init) -> usize

Initializes a with the given initializer. Read more
source§

unsafe fn deref<'a>(ptr: usize) -> &'a T

Dereferences the given pointer. Read more
source§

unsafe fn deref_mut<'a>(ptr: usize) -> &'a mut T

Mutably dereferences the given pointer. Read more
source§

unsafe fn drop(ptr: usize)

Drops the object pointed to by the given pointer. Read more
source§

impl<T> Same for T

§

type Output = T

Should always be Self
source§

impl<T, U> TryFrom<U> for T
where 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 T
where 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.
source§

impl<T> Upcast<T> for T

source§

fn upcast(&self) -> Option<&T>

source§

impl<V, T> VZip<V> for T
where V: MultiLane<T>,

source§

fn vzip(self) -> V

source§

impl<T> WithSubscriber for T

source§

fn with_subscriber<S>(self, subscriber: S) -> WithDispatch<Self>
where S: Into<Dispatch>,

Attaches the provided Subscriber to this type, returning a WithDispatch wrapper. Read more
source§

fn with_current_subscriber(self) -> WithDispatch<Self>

Attaches the current default Subscriber to this type, returning a WithDispatch wrapper. Read more
source§

impl<T> ErasedDestructor for T
where T: 'static,

source§

impl<T> MaybeSendSync for T

source§

impl<T> WasmNotSend for T
where T: Send,

source§

impl<T> WasmNotSendSync for T

source§

impl<T> WasmNotSync for T
where T: Sync,