Sign in

    mizchi/crater/style does not have a README file

    BorderCollapse

    pub(all) enum BorderCollapse {
    Separate
    Collapse
    }

    CSS border-collapse property (for tables)

    CaptionSide

    pub(all) enum CaptionSide {
    Top
    Bottom
    }

    CSS caption-side property (for table captions)
    impl Eq for CaptionSide
    impl Show for CaptionSide

    Contain

    pub(all) struct Contain {
    size : Bool
    inline_size : Bool
    layout : Bool
    paint : Bool
    style : Bool
    }

    CSS contain property - uses flags since multiple values can be combined e.g., "contain: layout paint" or "contain: strict"
    impl Eq for Contain
    impl Show for Contain

    Contain::content

    fn Contain::content() -> Contain

    content = layout + paint + style (no size)

    Contain::has_containment

    fn Contain::has_containment(self : Contain) -> Bool

    Contain::none

    fn Contain::none() -> Contain

    Contain::strict

    fn Contain::strict() -> Contain

    strict = size + layout + paint + style

    Direction

    pub(all) enum Direction {
    Ltr
    Rtl
    }

    CSS direction property (for inline text direction)
    impl Eq for Direction
    impl Show for Direction

    Direction::is_rtl

    fn Direction::is_rtl(self : Direction) -> Bool

    Check if direction is right-to-left

    Style

    pub(all) struct Style {
    display :
    Display

    position :
    Position

    float :
    Float

    clear :
    Clear

    box_sizing :
    BoxSizing

    overflow_x :
    Overflow

    overflow_y :
    Overflow

    width :
    Dimension

    height :
    Dimension

    min_width :
    Dimension

    min_height :
    Dimension

    max_width :
    Dimension

    max_height :
    Dimension

    margin :
    Rect
    [
    Dimension
    ]
    padding :
    Rect
    [
    Dimension
    ]
    border :
    Rect
    [
    Dimension
    ]
    flex_direction :
    FlexDirection

    flex_wrap :
    FlexWrap

    justify_content :
    Alignment

    align_items :
    Alignment

    align_content :
    Alignment

    align_self :
    AlignSelf

    flex_grow : Double
    flex_shrink : Double
    flex_basis :
    Dimension

    order : Int
    row_gap :
    Dimension

    column_gap :
    Dimension

    aspect_ratio : Double?
    inset :
    Rect
    [
    Dimension
    ]
    grid_template_rows : Array[
    TrackSizingFunction
    ]
    grid_template_columns : Array[
    TrackSizingFunction
    ]
    grid_auto_rows : Array[
    TrackSizingFunction
    ]
    grid_auto_columns : Array[
    TrackSizingFunction
    ]
    grid_auto_flow :
    GridAutoFlow

    grid_template_areas : Array[String]
    grid_row :
    GridLine

    grid_column :
    GridLine

    grid_area : String?
    justify_items :
    Alignment

    justify_self :
    AlignSelf

    font_size : Double
    line_height : Double
    white_space : WhiteSpace
    writing_mode : WritingMode
    direction : Direction
    vertical_align : VerticalAlign
    clip :
    ClipRect

    visibility : Visibility
    z_index : ZIndex
    opacity : Double
    color :
    Color

    background_color :
    Color

    contain : Contain
    transform : Transform
    zoom : Double
    border_spacing : Double
    border_collapse : BorderCollapse
    table_layout : TableLayout
    caption_side : CaptionSide
    rowspan : Int
    colspan : Int
    }

    CSS Style definition for layout computation All fields are mutable to support Yoga-like setter API

    Style::default

    fn Style::default() -> Style

    TableLayout

    pub(all) enum TableLayout {
    Auto
    Fixed
    }

    Table layout algorithm
    impl Eq for TableLayout
    impl Show for TableLayout

    Transform

    pub(all) struct Transform {
    translate_x : TranslateValue
    translate_y : TranslateValue
    scale_x : Double
    scale_y : Double
    }

    CSS transform property - list of transform functions Supports translate and scale for layout purposes
    impl Eq for Transform
    impl Show for Transform

    Transform::compute_translate_x

    fn Transform::compute_translate_x(self : Transform, element_width : Double) -> Double

    Compute translate X offset given element width

    Transform::compute_translate_y

    fn Transform::compute_translate_y(self : Transform, element_height : Double) -> Double

    Compute translate Y offset given element height

    Transform::has_scale

    fn Transform::has_scale(self : Transform) -> Bool

    Check if transform has scale applied

    Transform::is_none

    fn Transform::is_none(self : Transform) -> Bool

    Check if transform is identity (no visual change)

    Transform::none

    fn Transform::none() -> Transform

    Create a none/identity transform

    TranslateValue

    pub(all) enum TranslateValue {
    Length(Double)
    Percent(Double)
    }

    CSS transform translate value (can be length or percent)

    VerticalAlign

    pub(all) enum VerticalAlign {
    Baseline
    Top
    Middle
    Bottom
    TextTop
    TextBottom
    Sub
    Super
    }

    Vertical alignment for inline elements
    impl Eq for VerticalAlign

    Visibility

    pub(all) enum Visibility {
    Visible
    Hidden
    Collapse
    }

    CSS visibility property
    impl Eq for Visibility
    impl Show for Visibility

    WhiteSpace

    pub(all) enum WhiteSpace {
    Normal
    Nowrap
    Pre
    PreWrap
    PreLine
    }

    CSS white-space property (for text wrapping)
    impl Eq for WhiteSpace
    impl Show for WhiteSpace

    WritingMode

    pub(all) enum WritingMode {
    HorizontalTb
    VerticalRl
    VerticalLr
    }

    CSS writing-mode property (for text direction and flow)
    impl Eq for WritingMode
    impl Show for WritingMode

    WritingMode::is_block_rtl

    fn WritingMode::is_block_rtl(self : WritingMode) -> Bool

    Check if block direction is right-to-left (vertical-rl) In vertical-rl, blocks flow from right to left

    WritingMode::is_vertical

    fn WritingMode::is_vertical(self : WritingMode) -> Bool

    Check if writing mode is vertical

    ZIndex

    pub(all) enum ZIndex {
    Auto
    Value(Int)
    }

    CSS z-index property
    impl Eq for ZIndex
    impl Show for ZIndex

    Source Files