Struct TableCell

Source
pub struct TableCell {
    pub body: Content,
    /* private fields */
}
Expand description

A cell in the table. Use this to position a cell manually or to apply styling. To do the latter, you can either use the function to override the properties for a particular cell, or use it in show rules to apply certain styles to multiple cells at once.

Perhaps the most important use case of {table.cell} is to make a cell span multiple columns and/or rows with the colspan and rowspan fields.

>>> #set page(width: auto)
#show table.cell.where(y: 0): strong
#set table(
  stroke: (x, y) => if y == 0 {
    (bottom: 0.7pt + black)
  },
  align: (x, y) => (
    if x > 0 { center }
    else { left }
  )
)

#table(
  columns: 3,
  table.header(
    [Substance],
    [Subcritical °C],
    [Supercritical °C],
  ),
  [Hydrochloric Acid],
  [12.0], [92.1],
  [Sodium Myreth Sulfate],
  [16.6], [104],
  [Potassium Hydroxide],
  table.cell(colspan: 2)[24.7],
)

For example, you can override the fill, alignment or inset for a single cell:

>>> #set page(width: auto)
// You can also import those.
#import table: cell, header

#table(
  columns: 2,
  align: center,
  header(
    [*Trip progress*],
    [*Itinerary*],
  ),
  cell(
    align: right,
    fill: fuchsia.lighten(80%),
    [🚗],
  ),
  [Get in, folks!],
  [🚗], [Eat curbside hotdog],
  cell(align: left)[🌴🚗],
  cell(
    inset: 0.06em,
    text(1.62em)[🛖🌅🌊],
  ),
)

You may also apply a show rule on table.cell to style all cells at once. Combined with selectors, this allows you to apply styles based on a cell’s position:

#show table.cell.where(x: 0): strong

#table(
  columns: 3,
  gutter: 3pt,
  [Name], [Age], [Strength],
  [Hannes], [36], [Grace],
  [Irma], [50], [Resourcefulness],
  [Vikram], [49], [Perseverance],
)

Fields§

§body: Content

Implementations§

Source§

impl TableCell

Source

pub fn new(body: Content) -> Self

Create a new instance of the element.

Source

pub fn with_x(self, x: Smart<usize>) -> Self

Builder-style setter for the x field.

Source

pub fn with_y(self, y: Smart<usize>) -> Self

Builder-style setter for the y field.

Source

pub fn with_colspan(self, colspan: NonZeroUsize) -> Self

Builder-style setter for the colspan field.

Source

pub fn with_rowspan(self, rowspan: NonZeroUsize) -> Self

Builder-style setter for the rowspan field.

Source

pub fn with_fill(self, fill: Smart<Option<Paint>>) -> Self

Builder-style setter for the fill field.

Source

pub fn with_align(self, align: Smart<Alignment>) -> Self

Builder-style setter for the align field.

Source

pub fn with_inset(self, inset: Smart<Sides<Option<Rel<Length>>>>) -> Self

Builder-style setter for the inset field.

Source

pub fn with_stroke(self, stroke: Sides<Option<Option<Arc<Stroke>>>>) -> Self

Builder-style setter for the stroke field.

Source

pub fn with_breakable(self, breakable: Smart<bool>) -> Self

Builder-style setter for the breakable field.

Source

pub fn push_x(&mut self, x: Smart<usize>)

Setter for the x field.

Source

pub fn push_y(&mut self, y: Smart<usize>)

Setter for the y field.

Source

pub fn push_colspan(&mut self, colspan: NonZeroUsize)

Setter for the colspan field.

Source

pub fn push_rowspan(&mut self, rowspan: NonZeroUsize)

Setter for the rowspan field.

Source

pub fn push_fill(&mut self, fill: Smart<Option<Paint>>)

Setter for the fill field.

Source

pub fn push_align(&mut self, align: Smart<Alignment>)

Setter for the align field.

Source

pub fn push_inset(&mut self, inset: Smart<Sides<Option<Rel<Length>>>>)

Setter for the inset field.

Source

pub fn push_stroke(&mut self, stroke: Sides<Option<Option<Arc<Stroke>>>>)

Setter for the stroke field.

Source

pub fn push_breakable(&mut self, breakable: Smart<bool>)

Setter for the breakable field.

Source

pub fn x(&self, styles: StyleChain<'_>) -> Smart<usize>

The cell’s column (zero-indexed). Functions identically to the x field in grid.cell.

Source

pub fn y(&self, styles: StyleChain<'_>) -> Smart<usize>

The cell’s row (zero-indexed). Functions identically to the y field in grid.cell.

Source

pub fn colspan(&self, styles: StyleChain<'_>) -> NonZeroUsize

The amount of columns spanned by this cell.

Source

pub fn rowspan(&self, styles: StyleChain<'_>) -> NonZeroUsize

The amount of rows spanned by this cell.

Source

pub fn fill(&self, styles: StyleChain<'_>) -> Smart<Option<Paint>>

The cell’s fill override.

Source

pub fn align(&self, styles: StyleChain<'_>) -> Smart<Alignment>

The cell’s alignment override.

Source

pub fn inset(&self, styles: StyleChain<'_>) -> Smart<Sides<Option<Rel<Length>>>>

The cell’s inset override.

Source

pub fn stroke( &self, styles: StyleChain<'_>, ) -> <Sides<Option<Option<Arc<Stroke>>>> as Resolve>::Output

The cell’s stroke override.

Source

pub fn breakable(&self, styles: StyleChain<'_>) -> Smart<bool>

Whether rows spanned by this cell can be placed in different pages. When equal to {auto}, a cell spanning only fixed-size rows is unbreakable, while a cell spanning at least one {auto}-sized row is breakable.

Source

pub fn x_in(styles: StyleChain<'_>) -> Smart<usize>

Access the x field in the given style chain.

Source

pub fn y_in(styles: StyleChain<'_>) -> Smart<usize>

Access the y field in the given style chain.

Source

pub fn colspan_in(styles: StyleChain<'_>) -> NonZeroUsize

Access the colspan field in the given style chain.

Source

pub fn rowspan_in(styles: StyleChain<'_>) -> NonZeroUsize

Access the rowspan field in the given style chain.

Source

pub fn fill_in(styles: StyleChain<'_>) -> Smart<Option<Paint>>

Access the fill field in the given style chain.

Source

pub fn align_in(styles: StyleChain<'_>) -> Smart<Alignment>

Access the align field in the given style chain.

Source

pub fn inset_in(styles: StyleChain<'_>) -> Smart<Sides<Option<Rel<Length>>>>

Access the inset field in the given style chain.

Source

pub fn stroke_in( styles: StyleChain<'_>, ) -> <Sides<Option<Option<Arc<Stroke>>>> as Resolve>::Output

Access the stroke field in the given style chain.

Source

pub fn breakable_in(styles: StyleChain<'_>) -> Smart<bool>

Access the breakable field in the given style chain.

Source

pub fn set_x(x: Smart<usize>) -> Property

Create a style property for the x field.

Source

pub fn set_y(y: Smart<usize>) -> Property

Create a style property for the y field.

Source

pub fn set_colspan(colspan: NonZeroUsize) -> Property

Create a style property for the colspan field.

Source

pub fn set_rowspan(rowspan: NonZeroUsize) -> Property

Create a style property for the rowspan field.

Source

pub fn set_fill(fill: Smart<Option<Paint>>) -> Property

Create a style property for the fill field.

Source

pub fn set_align(align: Smart<Alignment>) -> Property

Create a style property for the align field.

Source

pub fn set_inset(inset: Smart<Sides<Option<Rel<Length>>>>) -> Property

Create a style property for the inset field.

Source

pub fn set_stroke(stroke: Sides<Option<Option<Arc<Stroke>>>>) -> Property

Create a style property for the stroke field.

Source

pub fn set_breakable(breakable: Smart<bool>) -> Property

Create a style property for the breakable field.

Trait Implementations§

Source§

impl Capable for TableCell

Source§

fn vtable(capability: TypeId) -> Option<NonNull<()>>

Get the pointer to the vtable for the given capability / trait.
Source§

impl Clone for TableCell

Source§

fn clone(&self) -> TableCell

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 Construct for TableCell

Source§

fn construct(engine: &mut Engine<'_>, args: &mut Args) -> SourceResult<Content>

Construct an element from the arguments. Read more
Source§

impl Debug for TableCell

Source§

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

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

impl Fields for TableCell

Source§

type Enum = Fields

An enum with the fields of the element.
Source§

fn has(&self, id: u8) -> bool

Whether the element has the given field set.
Source§

fn field(&self, id: u8) -> Result<Value, FieldAccessError>

Get the field with the given field ID.
Source§

fn field_with_styles( &self, id: u8, styles: StyleChain<'_>, ) -> Result<Value, FieldAccessError>

Get the field with the given ID in the presence of styles.
Source§

fn field_from_styles( id: u8, styles: StyleChain<'_>, ) -> Result<Value, FieldAccessError>

Get the field with the given ID from the styles.
Source§

fn materialize(&mut self, styles: StyleChain<'_>)

Resolve all fields with the styles and save them in-place.
Source§

fn fields(&self) -> Dict

Get the fields of the element.
Source§

impl From<Content> for TableCell

Source§

fn from(value: Content) -> Self

Converts to this type from the input type.
Source§

impl FromValue for TableCell

Source§

fn from_value(value: Value) -> HintedStrResult<Self>

Try to cast the value into an instance of Self.
Source§

impl Hash for TableCell

Source§

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

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 IntoValue for TableCell

Source§

fn into_value(self) -> Value

Cast this type into a value.
Source§

impl NativeElement for TableCell

Source§

fn data() -> &'static NativeElementData

Get the element data for the native Rust element.
Source§

fn elem() -> Element
where Self: Sized,

Get the element for the native Rust element.
Source§

fn pack(self) -> Content
where Self: Sized,

Pack the element into type-erased content.
Source§

impl PartialEq for TableCell

Source§

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

Tests for self and other values to be equal, and is used by ==.
1.0.0 · Source§

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

Tests for !=. The default implementation is almost always sufficient, and should not be overridden without very good reason.
Source§

impl Reflect for TableCell

Source§

fn input() -> CastInfo

Describe what can be cast into this value.
Source§

fn output() -> CastInfo

Describe what this value can be cast into.
Source§

fn castable(value: &Value) -> bool

Whether the given value can be converted to T. Read more
Source§

fn error(found: &Value) -> HintedString

Produce an error message for an unacceptable value type. Read more
Source§

impl Repr for TableCell

Source§

fn repr(&self) -> EcoString

Return the debug representation of the value.
Source§

impl Set for TableCell

Source§

fn set(engine: &mut Engine<'_>, args: &mut Args) -> SourceResult<Styles>

Parse relevant arguments into style properties for this element.

Auto Trait Implementations§

Blanket Implementations§

Source§

impl<S, D, Swp, Dwp, T> AdaptInto<D, Swp, Dwp, T> for S
where T: Real + Zero + Arithmetics + Clone, Swp: WhitePoint<T>, Dwp: WhitePoint<T>, D: AdaptFrom<S, Swp, Dwp, T>,

Source§

fn adapt_into_using<M>(self, method: M) -> D
where M: TransformMatrix<T>,

Convert the source color to the destination color using the specified method.
Source§

fn adapt_into(self) -> D

Convert the source color to the destination color using the bradford method by default.
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, C> ArraysFrom<C> for T
where C: IntoArrays<T>,

Source§

fn arrays_from(colors: C) -> T

Cast a collection of colors into a collection of arrays.
Source§

impl<T, C> ArraysInto<C> for T
where C: FromArrays<T>,

Source§

fn arrays_into(self) -> C

Cast this collection of arrays into a collection of colors.
Source§

impl<T> Az for T

Source§

fn az<Dst>(self) -> Dst
where T: Cast<Dst>,

Casts the value.
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<WpParam, T, U> Cam16IntoUnclamped<WpParam, T> for U
where T: FromCam16Unclamped<WpParam, U>,

Source§

type Scalar = <T as FromCam16Unclamped<WpParam, U>>::Scalar

The number type that’s used in parameters when converting.
Source§

fn cam16_into_unclamped( self, parameters: BakedParameters<WpParam, <U as Cam16IntoUnclamped<WpParam, T>>::Scalar>, ) -> T

Converts self into C, using the provided parameters.
Source§

impl<Src, Dst> CastFrom<Src> for Dst
where Src: Cast<Dst>,

Source§

fn cast_from(src: Src) -> Dst

Casts the value.
Source§

impl<T> CheckedAs for T

Source§

fn checked_as<Dst>(self) -> Option<Dst>
where T: CheckedCast<Dst>,

Casts the value.
Source§

impl<Src, Dst> CheckedCastFrom<Src> for Dst
where Src: CheckedCast<Dst>,

Source§

fn checked_cast_from(src: Src) -> Option<Dst>

Casts the value.
Source§

impl<T> CloneToUninit for T
where T: Clone,

Source§

unsafe fn clone_to_uninit(&self, dest: *mut u8)

🔬This is a nightly-only experimental API. (clone_to_uninit)
Performs copy-assignment from self to dest. Read more
Source§

impl<T, C> ComponentsFrom<C> for T
where C: IntoComponents<T>,

Source§

fn components_from(colors: C) -> T

Cast a collection of colors into a collection of color components.
Source§

impl<T> Downcast for T
where T: Any,

Source§

fn into_any(self: Box<T>) -> Box<dyn Any>

Convert Box<dyn Trait> (where Trait: Downcast) to Box<dyn Any>. Box<dyn Any> can then be further downcast into Box<ConcreteType> where ConcreteType implements Trait.
Source§

fn into_any_rc(self: Rc<T>) -> Rc<dyn Any>

Convert Rc<Trait> (where Trait: Downcast) to Rc<Any>. Rc<Any> can then be further downcast into Rc<ConcreteType> where ConcreteType implements Trait.
Source§

fn as_any(&self) -> &(dyn Any + 'static)

Convert &Trait (where Trait: Downcast) to &Any. This is needed since Rust cannot generate &Any’s vtable from &Trait’s.
Source§

fn as_any_mut(&mut self) -> &mut (dyn Any + 'static)

Convert &mut Trait (where Trait: Downcast) to &Any. This is needed since Rust cannot generate &mut Any’s vtable from &mut Trait’s.
Source§

impl<T> DowncastSync for T
where T: Any + Send + Sync,

Source§

fn into_any_arc(self: Arc<T>) -> Arc<dyn Any + Sync + Send>

Convert Arc<Trait> (where Trait: Downcast) to Arc<Any>. Arc<Any> can then be further downcast into Arc<ConcreteType> where ConcreteType implements Trait.
Source§

impl<T> From<T> for T

Source§

fn from(t: T) -> T

Returns the argument unchanged.

Source§

impl<T> FromAngle<T> for T

Source§

fn from_angle(angle: T) -> T

Performs a conversion from angle.
Source§

impl<T, U> FromStimulus<U> for T
where U: IntoStimulus<T>,

Source§

fn from_stimulus(other: U) -> T

Converts other into Self, while performing the appropriate scaling, rounding and clamping.
Source§

impl<T> FromValue<Spanned<Value>> for T
where T: FromValue,

Source§

fn from_value(value: Spanned<Value>) -> Result<T, HintedString>

Try to cast the value into an instance of Self.
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, U> IntoAngle<U> for T
where U: FromAngle<T>,

Source§

fn into_angle(self) -> U

Performs a conversion into T.
Source§

impl<WpParam, T, U> IntoCam16Unclamped<WpParam, T> for U
where T: Cam16FromUnclamped<WpParam, U>,

Source§

type Scalar = <T as Cam16FromUnclamped<WpParam, U>>::Scalar

The number type that’s used in parameters when converting.
Source§

fn into_cam16_unclamped( self, parameters: BakedParameters<WpParam, <U as IntoCam16Unclamped<WpParam, T>>::Scalar>, ) -> T

Converts self into C, using the provided parameters.
Source§

impl<T, U> IntoColor<U> for T
where U: FromColor<T>,

Source§

fn into_color(self) -> U

Convert into T with values clamped to the color defined bounds Read more
Source§

impl<T, U> IntoColorUnclamped<U> for T
where U: FromColorUnclamped<T>,

Source§

fn into_color_unclamped(self) -> U

Convert into T. The resulting color might be invalid in its color space Read more
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> IntoResult for T
where T: IntoValue,

Source§

fn into_result(self, _: Span) -> Result<Value, EcoVec<SourceDiagnostic>>

Cast this type into a value.
Source§

impl<T> IntoStimulus<T> for T

Source§

fn into_stimulus(self) -> T

Converts self into T, while performing the appropriate scaling, rounding and clamping.
Source§

impl<T> OverflowingAs for T

Source§

fn overflowing_as<Dst>(self) -> (Dst, bool)
where T: OverflowingCast<Dst>,

Casts the value.
Source§

impl<Src, Dst> OverflowingCastFrom<Src> for Dst
where Src: OverflowingCast<Dst>,

Source§

fn overflowing_cast_from(src: Src) -> (Dst, bool)

Casts the value.
Source§

impl<T> Pointable for T

Source§

const ALIGN: usize

The alignment of pointer.
Source§

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> SaturatingAs for T

Source§

fn saturating_as<Dst>(self) -> Dst
where T: SaturatingCast<Dst>,

Casts the value.
Source§

impl<Src, Dst> SaturatingCastFrom<Src> for Dst
where Src: SaturatingCast<Dst>,

Source§

fn saturating_cast_from(src: Src) -> Dst

Casts the value.
Source§

impl<T> ToOwned for T
where T: Clone,

Source§

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<T, C> TryComponentsInto<C> for T
where C: TryFromComponents<T>,

Source§

type Error = <C as TryFromComponents<T>>::Error

The error for when try_into_colors fails to cast.
Source§

fn try_components_into(self) -> Result<C, <T as TryComponentsInto<C>>::Error>

Try to cast this collection of color components into a collection of colors. Read more
Source§

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

Source§

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>,

Source§

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, U> TryIntoColor<U> for T
where U: TryFromColor<T>,

Source§

fn try_into_color(self) -> Result<U, OutOfBounds<U>>

Convert into T, returning ok if the color is inside of its defined range, otherwise an OutOfBounds error is returned which contains the unclamped color. Read more
Source§

impl<C, U> UintsFrom<C> for U
where C: IntoUints<U>,

Source§

fn uints_from(colors: C) -> U

Cast a collection of colors into a collection of unsigned integers.
Source§

impl<C, U> UintsInto<C> for U
where C: FromUints<U>,

Source§

fn uints_into(self) -> C

Cast this collection of unsigned integers into a collection of colors.
Source§

impl<T> UnwrappedAs for T

Source§

fn unwrapped_as<Dst>(self) -> Dst
where T: UnwrappedCast<Dst>,

Casts the value.
Source§

impl<Src, Dst> UnwrappedCastFrom<Src> for Dst
where Src: UnwrappedCast<Dst>,

Source§

fn unwrapped_cast_from(src: Src) -> Dst

Casts the value.
Source§

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

Source§

fn vzip(self) -> V

Source§

impl<T> WrappingAs for T

Source§

fn wrapping_as<Dst>(self) -> Dst
where T: WrappingCast<Dst>,

Casts the value.
Source§

impl<Src, Dst> WrappingCastFrom<Src> for Dst
where Src: WrappingCast<Dst>,

Source§

fn wrapping_cast_from(src: Src) -> Dst

Casts the value.
Source§

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

Source§

impl<T> MaybeSendSync for T
where T: Send + Sync,