[rust] add deser support for enum type (#8803)

* add deser support for enum type

* update generated files

* remove deser generator when bitflag enable

* add deser test

* Restore the Rust editions version

* Remove unnecessary modifications
This commit is contained in:
Fawdlstty
2025-12-03 11:48:45 +08:00
committed by GitHub
parent a5343d6116
commit 17ceaae16e
8 changed files with 129 additions and 2 deletions

View File

@@ -3,6 +3,9 @@
mod monster_test_serialize_generated;
pub use monster_test_serialize_generated::my_game;
use crate::my_game::example::AnyAmbiguousAliases;
use std::collections::HashMap;
fn create_serialized_example_with_generated_code(builder: &mut flatbuffers::FlatBufferBuilder) {
let mon = {
let s0 = builder.create_string("test1");
@@ -29,7 +32,10 @@ fn create_serialized_example_with_generated_code(builder: &mut flatbuffers::Flat
test: Some(
my_game::example::Monster::create(
builder,
&my_game::example::MonsterArgs { name: Some(fred_name), ..Default::default() },
&my_game::example::MonsterArgs {
name: Some(fred_name),
..Default::default()
},
)
.as_union_value(),
),
@@ -83,4 +89,8 @@ fn main() {
let t1 = testarrayofstring[1].as_str().unwrap();
assert_eq!(t1, "test2");
let s = r#"{"val":"M1"}"#;
let des = serde_json::from_str::<HashMap<String, AnyAmbiguousAliases>>(s).unwrap();
assert_eq!(*des.get("val").unwrap(), AnyAmbiguousAliases::M1);
}