tame/tamer/src
Mike Gerwitz 5fb68f9b67 TAMER: Make Asg generic over object
There's a lot here to make the object stored on the `Asg` generic.  This
introduces `ObjectState` for state transitions and `ObjectData` for pure
data retrieval.  This will allow not only for mocking, but will be useful to
enforce compile-time restrictions on the type of objects expected by the
linker vs. the compiler (e.g. the linker will not have expressions).

This commit intentionally leaves the corresponding tests in their original
location to prove that the functionality has not changed; they'll be moved
in a future commit.

This also leaves the names as "Object" to reduce the number the cognative
overhead of this commit.  It will be renamed to something like "IdentObject"
in the near future to clarify the intent of the current object type and to
open the way for expressions and a type that marries both of them in the
future.

Once all of this is done, we'll finally be able to make changes to the
compatibility logic in state transitions to implement extern compatibility
checks during resolution.

DEV-7087
2020-03-24 09:56:20 -04:00
..
bin Copyright year 2020 update 2020-03-06 11:05:18 -05:00
ir TAMER: Make Asg generic over object 2020-03-24 09:56:20 -04:00
ld TAMER: Make Asg generic over object 2020-03-24 09:56:20 -04:00
obj TAMER: Make Asg generic over object 2020-03-24 09:56:20 -04:00
test Copyright year 2020 update 2020-03-06 11:05:18 -05:00
global.rs Copyright year 2020 update 2020-03-06 11:05:18 -05:00
ld.rs Copyright year 2020 update 2020-03-06 11:05:18 -05:00
lib.rs ir::asg::Object::Empty: Remove variant 2020-03-19 15:42:06 -04:00
sym.rs Copyright year 2020 update 2020-03-06 11:05:18 -05:00