¿Cómo implementa Rust la reflexión?
El óxido tiene elAny
rasgo, pero también tiene una política de "no pague por lo que no usa". ¿Cómo implementa Rust la reflexión?
Mi conjetura es que Rust usa etiquetado perezoso. Inicialmente, cada tipo no está asignado, pero más tarde si se pasa una instancia del tipo a una función que espera unAny
rasgo, el tipo se le asigna unTypeId
.
O tal vez Rust pone unTypeId
en cada tipo que su instancia posiblemente se pasa a esa función? Supongo que lo primero sería costoso.