¿Cómo agregar metadatos al System.Type?
He estado trabajando en un lenguaje, pero en términos de integración .NET solo he logrado que los tipos primitivos funcionen hasta ahora. Anoche tuve una buena idea, en lugar de tratar de averiguar cuál era exactamenteSystem.Type
para tuplas, módulos y funciones deben estar durante la verificación de tipos, lo que podría hacer en su lugar es obtener elSystem.Type
deSystem.Object
y agrego algunos metadatos que corresponden a mis propios tipos de idiomas complejos. Lo que importa no es exactamenteSystem.Type
Estaría agregando los metadatos a, pero que cada uno de los sustitutos de los tipos en mi idioma son distintos entre sí.
La razón por la que necesito esto es porque estoy usando las funciones del espacio de nombres de reflexión para la integración que implica hacer malabaresSystem.Type
s.
type SpiralType =
| IntT
| StringT
| TupleT of SpiralType list
,Como ejemplo, lo que me gustaría agregar a laSystem.Type
serían las instancias del tipo de unión discriminada F # anterior para garantizar la unicidad.
¿Cuál sería la mejor manera de hacer esto?