Commit
This commit does not belong to any branch on this repository, and may belong to a fork outside of the repository.
Complete rewrite of LinkedFlowScope to use PersistentMap.
The new version is comparable in overall performance (inferSlotType() is about 3x slower, but getSlot(), equals(), and JoinOp are all about 3x faster), but is much cleaner and easier to reason about. There is no longer a separate cache, so there's no longer any need for duplicated logic between the linked list and the cache. Moreover, with the nested maps, it's now trivial to remove inner block scopes when they are exited, or qualified names when their receivers should be invalidated (see #2854). Closes github.com//issues/2904. ------------- Created by MOE: https://github.com/google/moe MOE_MIGRATED_REVID=196881033
- Loading branch information