static class MakeDeclaredNamesUnique.ContextualRenamer extends java.lang.Object implements MakeDeclaredNamesUnique.Renamer
Normalize
Modifier and Type | Field and Description |
---|---|
private java.util.Map<java.lang.String,java.lang.String> |
declarations |
private boolean |
global |
private MakeDeclaredNamesUnique.Renamer |
hoistRenamer |
private com.google.common.collect.Multiset<java.lang.String> |
nameUsage |
(package private) static java.lang.String |
UNIQUE_ID_SEPARATOR |
Modifier | Constructor and Description |
---|---|
(package private) |
ContextualRenamer() |
private |
ContextualRenamer(com.google.common.collect.Multiset<java.lang.String> nameUsage,
boolean hoistingTargetScope,
MakeDeclaredNamesUnique.Renamer parent)
Constructor for child scopes.
|
Modifier and Type | Method and Description |
---|---|
void |
addDeclaredName(java.lang.String name,
boolean hoisted)
Adds a name to the map of names declared in this scope.
|
MakeDeclaredNamesUnique.Renamer |
forChildScope(boolean hoistintTargetScope)
Create a ContextualRenamer
|
MakeDeclaredNamesUnique.Renamer |
getHoistRenamer() |
java.lang.String |
getReplacementName(java.lang.String oldName) |
private static java.lang.String |
getUniqueName(java.lang.String name,
int id)
Given a name and the associated id, create a new unique name.
|
private int |
incrementNameCount(java.lang.String name) |
private void |
reserveName(java.lang.String name) |
boolean |
stripConstIfReplaced() |
private final com.google.common.collect.Multiset<java.lang.String> nameUsage
private final java.util.Map<java.lang.String,java.lang.String> declarations
private final boolean global
private final MakeDeclaredNamesUnique.Renamer hoistRenamer
static final java.lang.String UNIQUE_ID_SEPARATOR
ContextualRenamer()
private ContextualRenamer(com.google.common.collect.Multiset<java.lang.String> nameUsage, boolean hoistingTargetScope, MakeDeclaredNamesUnique.Renamer parent)
public MakeDeclaredNamesUnique.Renamer forChildScope(boolean hoistintTargetScope)
forChildScope
in interface MakeDeclaredNamesUnique.Renamer
public void addDeclaredName(java.lang.String name, boolean hoisted)
addDeclaredName
in interface MakeDeclaredNamesUnique.Renamer
public java.lang.String getReplacementName(java.lang.String oldName)
getReplacementName
in interface MakeDeclaredNamesUnique.Renamer
private static java.lang.String getUniqueName(java.lang.String name, int id)
private void reserveName(java.lang.String name)
private int incrementNameCount(java.lang.String name)
public boolean stripConstIfReplaced()
stripConstIfReplaced
in interface MakeDeclaredNamesUnique.Renamer
public MakeDeclaredNamesUnique.Renamer getHoistRenamer()
getHoistRenamer
in interface MakeDeclaredNamesUnique.Renamer