Ano, spravne. Jednotlive typy (XYZ) poznam uz v dobe prekladu, nevedel som spravne namodelovat Trait tak, aby som vedel "nacpat" XYZ do funkcie "push", a teda, vyuzil som mne zname std::Any.
Proč nepoužiješ enum?
Este niesom v Ruste spravne "zabehnuty" takze, neviem/netusim ako konkretne by som pouzil Enum ako nahradu za Struct ( tomto konkretnom priklade)
Očividně jsme se nepochopili, enum v Rustu je, jak správně poznamenal Idris, součtový typ, tedy něco jako variantní typ v jiných jazycích - můžeš na základě zvolené varianty (typicky pattern matching) vzít vnitřek (např. instanci struktury X, Y nebo Z) a pracovat s ním "hezky" namísto toho řešení, které jsi měl původně. Struktura a enum se v Rustu doplňují a to dost elegantně.
Tvoje nové řešení používá enum a la C, což není samozřejmě nic špatného, ale já jsem si představoval něco jiného - muselo by se to ale celé překopat. Jinak doporučuju se mrknout na Diesel a podobná řešení DB v Rustu - ať už pro náhradu nebo inspiraci.