Folio.Content (Folio v0.3.0)

Copy Markdown View Source

Typed content nodes that map 1:1 to Typst elements.

Every struct has matching fields in native/folio_nif/src/types.rs. The Rust NifStruct #[module = "Folio.Content.*"] must match exactly.

Summary

Functions

Flatten nested Sequences.

Convert a value to a content list.

Types

t()

@type t() ::
  Folio.Content.Text.t()
  | Folio.Content.Space.t()
  | Folio.Content.Heading.t()
  | Folio.Content.Cite.t()
  | Folio.Content.Bibliography.t()
  | Folio.Content.Paragraph.t()
  | Folio.Content.Strong.t()
  | Folio.Content.Emph.t()
  | Folio.Content.Strike.t()
  | Folio.Content.Underline.t()
  | Folio.Content.Highlight.t()
  | Folio.Content.Super.t()
  | Folio.Content.Sub.t()
  | Folio.Content.Smallcaps.t()
  | Folio.Content.Image.t()
  | Folio.Content.Figure.t()
  | Folio.Content.Table.t()
  | Folio.Content.TableHeader.t()
  | Folio.Content.TableRow.t()
  | Folio.Content.TableCell.t()
  | Folio.Content.Columns.t()
  | Folio.Content.Colbreak.t()
  | Folio.Content.Pagebreak.t()
  | Folio.Content.Parbreak.t()
  | Folio.Content.Linebreak.t()
  | Folio.Content.Math.t()
  | Folio.Content.Link.t()
  | Folio.Content.Raw.t()
  | Folio.Content.Quote.t()
  | Folio.Content.List.t()
  | Folio.Content.ListItem.t()
  | Folio.Content.EnumList.t()
  | Folio.Content.EnumItem.t()
  | Folio.Content.Label.t()
  | Folio.Content.Ref.t()
  | Folio.Content.Align.t()
  | Folio.Content.Block.t()
  | Folio.Content.Hide.t()
  | Folio.Content.Repeat.t()
  | Folio.Content.Place.t()
  | Folio.Content.VSpace.t()
  | Folio.Content.HSpace.t()
  | Folio.Content.Pad.t()
  | Folio.Content.Stack.t()
  | Folio.Content.Rect.t()
  | Folio.Content.Square.t()
  | Folio.Content.Circle.t()
  | Folio.Content.Ellipse.t()
  | Folio.Content.Line.t()
  | Folio.Content.Polygon.t()
  | Folio.Content.Outline.t()
  | Folio.Content.Title.t()
  | Folio.Content.TermList.t()
  | Folio.Content.TermItem.t()
  | Folio.Content.Footnote.t()
  | Folio.Content.Divider.t()
  | Folio.Content.Grid.t()
  | Folio.Content.GridCell.t()
  | Folio.Content.LocalSet.t()
  | Folio.Content.RawTypst.t()
  | Folio.Content.ShowRule.t()
  | Folio.Content.Sequence.t()

Functions

flatten(nodes)

@spec flatten([t()]) :: [t()]

Flatten nested Sequences.

to_content(node)

@spec to_content(t() | String.t() | [t()] | nil) :: [t()]

Convert a value to a content list.