data type registration is currently dynamic -- each data type class has a function that consumes JSON-style metadata and either accepts or rejects it. Although it would be much simpler to use a <name> : <class> registry, I used the dynamic design because of the nature of v2 data types, where multiple logically distinct data types have the same name. But that's not a good reason, since we can give those data types their own string aliases, independent of what the metadata says. So we should correct my error, and migrate our data type registry to the simpler form.
data type registration is currently dynamic -- each data type class has a function that consumes JSON-style metadata and either accepts or rejects it. Although it would be much simpler to use a
<name> : <class>registry, I used the dynamic design because of the nature of v2 data types, where multiple logically distinct data types have the same name. But that's not a good reason, since we can give those data types their own string aliases, independent of what the metadata says. So we should correct my error, and migrate our data type registry to the simpler form.