omo obter programaticamente o número de campos de uma estrutur
Tenho uma estrutura personalizada como a seguinte:
struct MyStruct {
first_field: i32,
second_field: String,
third_field: u16,
}
É possível obter o número de campos struct programaticamente (como, por exemplo, através de uma chamada de métodofield_count()
):
let my_struct = MyStruct::new(10, "second_field", 4);
let field_count = my_struct.field_count(); // Expecting to get 3
Para esta estrutura:
struct MyStruct2 {
first_field: i32,
}
... a seguinte chamada deve retornar1
:
let my_struct_2 = MyStruct2::new(7);
let field_count = my_struct2.field_count(); // Expecting to get count 1
Existe alguma API comofield_count()
ou só é possível obtê-lo através de macros?
Se isso é possível com macros, como deve ser implementado?