HashMap::<id, dyn IComponentArray }
                  
                  
                  
                  
                  
                  Дальше я имплементирую ComponentArray<T> 
                  
                  
                  То есть идея в менеджере хранить массивы разных данных с одним интерфейсом
                  
                  
                  
                  
                  
                  Но дальше я хочу читать из менеджера
                  
                  
                  
                  
                  
                  get_component_array(&self) -> ComponentArray<T>  {
                  
                  
                  ...
                  
                  
                  HashMap[id] <- здесь лежит dyn IComponentArray, но я хочу закастить к ComponentArray<T>
                  
                  
                
enum Foo { ComponentOne, ComponentTwo, } Не?
Хм, а ты не anymap ищешь?
Вообще, даункастить в определённый тип - затея так себе. Лучше просто один трейт на все типы заимплементить, и использовать этот трейт на всё.
Обсуждают сегодня