The immutable state of the phase that can also be accessed by other phases.
The immutable state of the phase that can also be accessed by other phases.
Run the phase
Run the phase
The unique name of the phase
The unique name of the phase
(assignUniqueSymbols: StringAdd).self
(assignUniqueSymbols: StringFormat).self
(assignUniqueSymbols: ArrowAssoc[AssignUniqueSymbols]).x
(Since version 2.10.0) Use leftOfArrow
instead
(assignUniqueSymbols: Ensuring[AssignUniqueSymbols]).x
(Since version 2.10.0) Use resultOfEnsuring
instead
Ensure that all symbol definitions in a tree are unique. The same symbol can initially occur in multiple sub-trees when some part of a query is reused multiple times. This phase assigns new, uniqe symbols, so that later phases do not have to take scopes into account for identifying the source of a symbol. The rewriting is performed for both, term symbols and type symbols.