-
-
Notifications
You must be signed in to change notification settings - Fork 48
Description
Currently all types are currently held under a single Vec<Type>
, and TypeId
is pointer into this vector. TypeId is a wrapped for a u16. To support larger files/codebases this needs to increase
-
Currently the sequential ids require the whole program to be checked (from a starting point). Adding more incremental parts will create problems if an intermediate file is changed.
TypeId
has to be split between libraries/files somehow. -
Also from Add binary type caching back and think about TypeId #103: Adding versioning or something to the binary format that can be checked on deserialization. This is because new versions of the compiler might have a different representation in byte form (new fields, removed enum members, etc) that isn't compatible to be parsed with binary files generated by older compilers