tailwind_rs_core/utilities/layout/
float.rs1use crate::classes::ClassBuilder;
4use serde::{Deserialize, Serialize};
5use std::fmt;
6
7#[derive(Debug, Clone, Copy, PartialEq, Eq, Hash, Serialize, Deserialize)]
9pub enum Float {
10 Right,
12 Left,
14 None,
16}
17
18impl fmt::Display for Float {
19 fn fmt(&self, f: &mut fmt::Formatter<'_>) -> fmt::Result {
20 match self {
21 Float::Right => write!(f, "float-right"),
22 Float::Left => write!(f, "float-left"),
23 Float::None => write!(f, "float-none"),
24 }
25 }
26}
27
28pub trait FloatUtilities {
30 fn float(self, float: Float) -> Self;
31}
32
33impl FloatUtilities for ClassBuilder {
34 fn float(self, float: Float) -> Self {
35 self.class(float.to_string())
36 }
37}
38
39#[cfg(test)]
40mod tests {
41 use super::*;
42
43 #[test]
44 fn test_float_utilities() {
45 let classes = ClassBuilder::new().float(Float::Left).build();
46
47 assert!(classes.to_css_classes().contains("float-left"));
48 }
49}