Есть ли способ получить доступ к элементу структуры по имени? TypeId
(std::any::TypeId::of::<T>
)?Можно получить доступ к 'TypeId' элемента структуры?
Если у меня есть базовая:
-структураMyStruct {
value: i64,
}
И я знаю только MyStruct
и value
, есть способ получить доступ к TypeId::of::<i64>
- где i64
зависит от типа value
?
main() {
assert_eq!(
TypeId::of::<i64>,
// ^^^ this works
type_id_of!(MyStruct, value),
// ^^^ this is what I'm looking for
);
}
См родственный вопрос: Is it possible to access the type of a struct member for function signatures or declarations?
Возможно, добавление примера того, как это будет работать, может помочь. Было бы что-то вроде 'TypeId :: of ::'? Обратите внимание: этот синтаксис не существует, но я думаю, что он служит примером того, чего вы пытаетесь достичь. –
aochagavia
. Добавлен пример на вопрос – ideasman42