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?

questionAnswers(2)

yourAnswerToTheQuestion