tame/tamer/src/asg/graph
Mike Gerwitz ba38a3c1ba tamer: src::asg::air: Pool identifiers into global environment
This, finally, introduces identifier pooling in the global environment,
represented by `Root`.  All package-level identifiers will be scoped as
such, which at the moment means anything that's not within a template.

As mentioned in recent commits, this does require additional cleanup to
finalize, and some more test will make additional rationale more clear.

It's also worth noting the intent of storing the `ObjectIndex<Root>`---not
only does it mean that the active root can be derived solely from the
current parsing state, but it also means that in the future we can
contribute to any, potentially multiple, roots.  I had previously used Neo4J
to effectively diff two dependency graphs between versions in the current
XSLT-based TAMER; I'd like to be able to do that with TAMER in the future,
which is an important concept when considering automated data migration, as
well as querying for the effects of changes.

More to come.  I'm hoping this is finally nearing a conclusion and I can
finally tie everything together with package imports.  `AirIdent` will be
introduced into the mix soon now too, now that this commit is able to root
them.

DEV-13162
2023-05-16 23:28:47 -04:00
..
object tamer: src::asg::air: Pool identifiers into global environment 2023-05-16 23:28:47 -04:00
visit tamer: asg::air::ir::AirPkg::PkgStart: Require name 2023-05-10 13:57:45 -04:00
object.rs tamer: asg::air: Begin to introduce explicit scope testing 2023-05-12 14:07:29 -04:00
test.rs tamer: asg::graph::{index_identifier=>index}: Generalize 2023-04-20 16:46:30 -04:00
visit.rs tamer: asg::graph::visit::topo: Cycle detection 2023-04-27 16:28:57 -04:00
xmli.rs tamer: asg: Integrate package CanonicalName 2023-05-05 10:26:58 -04:00