"Serialize" type info to a runtime tag based on serde data model.
u8
integer will be "serialized" into Primitive::U8
enum without its value```rust use serde_typeinfo::{TypeTag, Primitive};
asserteq!( TypeTag::fromvalue(&32_u8), TypeTag::Primitive(Primitive::U8), // only tag, not includes 32 ); ```
serde::Serialize
trait implementation
will be "serialized" into TypeTag::Struct
as its name and its fields' names and types,
not includes values.```rust use serde_typeinfo::{TypeTag, Primitive}; use serde::Serialize;
struct A { a: u8, b: u8, }
asserteq!( TypeTag::fromvalue(&A { a: 2, b: 3 }), TypeTag::Struct { name: "A", fields: vec![ ("a", Primitive::U8.into()), ("b", Primitive::U8.into()), ] } ); ```
© 2023 Toshiki Teramura (@termoshtt)
This project is licensed under either of
at your option.