Skip to content

Commit

Permalink
genenums: try to fix rustfmt
Browse files Browse the repository at this point in the history
  • Loading branch information
adjabaev committed Sep 2, 2024
1 parent a10e904 commit 38b6576
Show file tree
Hide file tree
Showing 2 changed files with 104 additions and 107 deletions.
128 changes: 64 additions & 64 deletions bindings/java/src/enums.rs
Original file line number Diff line number Diff line change
@@ -1,39 +1,27 @@
use taffy::AbsoluteAxis;
use taffy::AlignItems;
use taffy::AlignContent;
use taffy::AlignItems;
use taffy::BoxGenerationMode;
use taffy::BoxSizing;
use taffy::Display;
use taffy::FlexDirection;
use taffy::FlexWrap;
use taffy::GridAutoFlow;
use taffy::TextAlign;
use taffy::Overflow;
use taffy::BoxSizing;
use taffy::Position;
use taffy::BoxGenerationMode;
use taffy::Display;
use taffy::TextAlign;
use crate::traits::FromJavaEnum;

impl FromJavaEnum<Display> for Display {
const JAVA_CLASS: &'static str = "Lcom/dioxuslabs/taffy/enums/Display;";

fn from_ordinal(internal: i32) -> Option<Display> {
Some(match internal {
0 => Display::Block,
1 => Display::Flex,
2 => Display::Grid,
3 => Display::None,
_ => Display::default(),
})
}
}

impl FromJavaEnum<BoxGenerationMode> for BoxGenerationMode {
const JAVA_CLASS: &'static str = "Lcom/dioxuslabs/taffy/enums/BoxGenerationMode;";
impl FromJavaEnum<TextAlign> for TextAlign {
const JAVA_CLASS: &'static str = "Lcom/dioxuslabs/taffy/enums/TextAlign;";

fn from_ordinal(internal: i32) -> Option<BoxGenerationMode> {
fn from_ordinal(internal: i32) -> Option<TextAlign> {
Some(match internal {
0 => BoxGenerationMode::Normal,
1 => BoxGenerationMode::None,
_ => BoxGenerationMode::default(),
0 => TextAlign::Auto,
1 => TextAlign::LegacyLeft,
2 => TextAlign::LegacyRight,
3 => TextAlign::LegacyCenter,
_ => TextAlign::default(),
})
}
}
Expand All @@ -50,18 +38,6 @@ impl FromJavaEnum<Position> for Position {
}
}

impl FromJavaEnum<BoxSizing> for BoxSizing {
const JAVA_CLASS: &'static str = "Lcom/dioxuslabs/taffy/enums/BoxSizing;";

fn from_ordinal(internal: i32) -> Option<BoxSizing> {
Some(match internal {
0 => BoxSizing::BorderBox,
1 => BoxSizing::ContentBox,
_ => BoxSizing::default(),
})
}
}

impl FromJavaEnum<Overflow> for Overflow {
const JAVA_CLASS: &'static str = "Lcom/dioxuslabs/taffy/enums/Overflow;";

Expand All @@ -76,20 +52,6 @@ impl FromJavaEnum<Overflow> for Overflow {
}
}

impl FromJavaEnum<TextAlign> for TextAlign {
const JAVA_CLASS: &'static str = "Lcom/dioxuslabs/taffy/enums/TextAlign;";

fn from_ordinal(internal: i32) -> Option<TextAlign> {
Some(match internal {
0 => TextAlign::Auto,
1 => TextAlign::LegacyLeft,
2 => TextAlign::LegacyRight,
3 => TextAlign::LegacyCenter,
_ => TextAlign::default(),
})
}
}

impl FromJavaEnum<GridAutoFlow> for GridAutoFlow {
const JAVA_CLASS: &'static str = "Lcom/dioxuslabs/taffy/enums/GridAutoFlow;";

Expand Down Expand Up @@ -131,21 +93,40 @@ impl FromJavaEnum<FlexDirection> for FlexDirection {
}
}

impl FromJavaEnum<AlignContent> for AlignContent {
const JAVA_CLASS: &'static str = "Lcom/dioxuslabs/taffy/enums/AlignContent;";
impl FromJavaEnum<Display> for Display {
const JAVA_CLASS: &'static str = "Lcom/dioxuslabs/taffy/enums/Display;";

fn from_ordinal(internal: i32) -> Option<AlignContent> {
fn from_ordinal(internal: i32) -> Option<Display> {
Some(match internal {
0 => AlignContent::Start,
1 => AlignContent::End,
2 => AlignContent::FlexStart,
3 => AlignContent::FlexEnd,
4 => AlignContent::Center,
5 => AlignContent::Stretch,
6 => AlignContent::SpaceBetween,
7 => AlignContent::SpaceEvenly,
8 => AlignContent::SpaceAround,
_ => panic!("Invalid value: {internal}"),
0 => Display::Block,
1 => Display::Flex,
2 => Display::Grid,
3 => Display::None,
_ => Display::default(),
})
}
}

impl FromJavaEnum<BoxSizing> for BoxSizing {
const JAVA_CLASS: &'static str = "Lcom/dioxuslabs/taffy/enums/BoxSizing;";

fn from_ordinal(internal: i32) -> Option<BoxSizing> {
Some(match internal {
0 => BoxSizing::BorderBox,
1 => BoxSizing::ContentBox,
_ => BoxSizing::default(),
})
}
}

impl FromJavaEnum<BoxGenerationMode> for BoxGenerationMode {
const JAVA_CLASS: &'static str = "Lcom/dioxuslabs/taffy/enums/BoxGenerationMode;";

fn from_ordinal(internal: i32) -> Option<BoxGenerationMode> {
Some(match internal {
0 => BoxGenerationMode::Normal,
1 => BoxGenerationMode::None,
_ => BoxGenerationMode::default(),
})
}
}
Expand All @@ -167,6 +148,25 @@ impl FromJavaEnum<AlignItems> for AlignItems {
}
}

impl FromJavaEnum<AlignContent> for AlignContent {
const JAVA_CLASS: &'static str = "Lcom/dioxuslabs/taffy/enums/AlignContent;";

fn from_ordinal(internal: i32) -> Option<AlignContent> {
Some(match internal {
0 => AlignContent::Start,
1 => AlignContent::End,
2 => AlignContent::FlexStart,
3 => AlignContent::FlexEnd,
4 => AlignContent::Center,
5 => AlignContent::Stretch,
6 => AlignContent::SpaceBetween,
7 => AlignContent::SpaceEvenly,
8 => AlignContent::SpaceAround,
_ => panic!("Invalid value: {internal}"),
})
}
}

impl FromJavaEnum<AbsoluteAxis> for AbsoluteAxis {
const JAVA_CLASS: &'static str = "Lcom/dioxuslabs/taffy/enums/AbsoluteAxis;";

Expand Down
83 changes: 40 additions & 43 deletions scripts/genenums/src/main.rs
Original file line number Diff line number Diff line change
Expand Up @@ -14,49 +14,46 @@ struct RustEnum<'local> {
fn main() {
fs::remove_file("./bindings/java/src/enums.rs").expect("Error: Unable to remove java/src/enums.rs file");

let mut enums: Vec<RustEnum> = Vec::new();
enums.push(RustEnum { name: "Display", values: vec!["Block", "Flex", "Grid", "None"], default: true });
enums.push(RustEnum { name: "BoxGenerationMode", values: vec!["Normal", "None"], default: true });
enums.push(RustEnum { name: "Position", values: vec!["Relative", "Absolute"], default: true });
enums.push(RustEnum { name: "BoxSizing", values: vec!["BorderBox", "ContentBox"], default: true });
enums.push(RustEnum { name: "Overflow", values: vec!["Visible", "Clip", "Hidden", "Scroll"], default: true });
enums.push(RustEnum {
name: "TextAlign",
values: vec!["Auto", "LegacyLeft", "LegacyRight", "LegacyCenter"],
default: true,
});
enums.push(RustEnum {
name: "GridAutoFlow",
values: vec!["Row", "Column", "RowDense", "ColumnDense"],
default: true,
});
enums.push(RustEnum { name: "FlexWrap", values: vec!["NoWrap", "Wrap", "WrapReverse"], default: true });
enums.push(RustEnum {
name: "FlexDirection",
values: vec!["Row", "Column", "RowReverse", "ColumnReverse"],
default: true,
});
enums.push(RustEnum {
name: "AlignContent",
values: vec![
"Start",
"End",
"FlexStart",
"FlexEnd",
"Center",
"Stretch",
"SpaceBetween",
"SpaceEvenly",
"SpaceAround",
],
default: false,
});
enums.push(RustEnum {
name: "AlignItems",
values: vec!["Start", "End", "FlexStart", "FlexEnd", "Center", "Baseline", "Stretch"],
default: false,
});
enums.push(RustEnum { name: "AbsoluteAxis", values: vec!["Horizontal", "Vertical"], default: false });
let mut enums: Vec<RustEnum> = vec![
RustEnum { name: "Display", values: vec!["Block", "Flex", "Grid", "None"], default: true },
RustEnum { name: "BoxGenerationMode", values: vec!["Normal", "None"], default: true },
RustEnum { name: "Position", values: vec!["Relative", "Absolute"], default: true },
RustEnum { name: "BoxSizing", values: vec!["BorderBox", "ContentBox"], default: true },
RustEnum { name: "Overflow", values: vec!["Visible", "Clip", "Hidden", "Scroll"], default: true },
RustEnum {
name: "TextAlign",
values: vec!["Auto", "LegacyLeft", "LegacyRight", "LegacyCenter"],
default: true,
},
RustEnum { name: "GridAutoFlow", values: vec!["Row", "Column", "RowDense", "ColumnDense"], default: true },
RustEnum { name: "FlexWrap", values: vec!["NoWrap", "Wrap", "WrapReverse"], default: true },
RustEnum { name: "FlexDirection", values: vec!["Row", "Column", "RowReverse", "ColumnReverse"], default: true },
RustEnum {
name: "AlignContent",
values: vec![
"Start",
"End",
"FlexStart",
"FlexEnd",
"Center",
"Stretch",
"SpaceBetween",
"SpaceEvenly",
"SpaceAround",
],
default: false,
},
RustEnum {
name: "AlignItems",
values: vec!["Start", "End", "FlexStart", "FlexEnd", "Center", "Baseline", "Stretch"],
default: false,
},
RustEnum { name: "AbsoluteAxis", values: vec!["Horizontal", "Vertical"], default: false },
];

// Might look inverted at first, but it is needed for rustfmt to not throw formatting errors
// (also known as ensuring alphabetical order in imports)
enums.sort_by(|a, b| b.name.cmp(a.name));

for value in enums.into_iter() {
create_enum(value.name, &value.values);
Expand Down

0 comments on commit 38b6576

Please sign in to comment.