takumi_css/style/properties/
order.rs1use cssparser::Parser;
2use std::fmt;
3
4use crate::style::{
5 Animatable, CssSyntaxKind, CssToken, FromCss, MakeComputed, ParseResult, ToCss,
6};
7
8#[derive(Debug, Clone, Copy, PartialEq, Eq, Default)]
9pub struct Order(pub i32);
11
12impl MakeComputed for Order {}
13impl Animatable for Order {}
14
15impl<'i> FromCss<'i> for Order {
16 fn from_css(input: &mut Parser<'i, '_>) -> ParseResult<'i, Self> {
17 Ok(Self(input.expect_integer()?))
18 }
19
20 const VALID_TOKENS: &'static [CssToken] = &[CssToken::Syntax(CssSyntaxKind::Integer)];
21}
22
23impl ToCss for Order {
24 fn to_css<W: fmt::Write>(&self, dest: &mut W) -> fmt::Result {
25 write!(dest, "{}", self.0)
26 }
27}