diff options
Diffstat (limited to 'src/cuchaz/enigma/analysis/EntryRenamer.java')
| -rw-r--r-- | src/cuchaz/enigma/analysis/EntryRenamer.java | 25 |
1 files changed, 20 insertions, 5 deletions
diff --git a/src/cuchaz/enigma/analysis/EntryRenamer.java b/src/cuchaz/enigma/analysis/EntryRenamer.java index 44e0220..2d59fe9 100644 --- a/src/cuchaz/enigma/analysis/EntryRenamer.java +++ b/src/cuchaz/enigma/analysis/EntryRenamer.java | |||
| @@ -11,7 +11,6 @@ | |||
| 11 | package cuchaz.enigma.analysis; | 11 | package cuchaz.enigma.analysis; |
| 12 | 12 | ||
| 13 | import java.util.AbstractMap; | 13 | import java.util.AbstractMap; |
| 14 | import java.util.Iterator; | ||
| 15 | import java.util.List; | 14 | import java.util.List; |
| 16 | import java.util.Map; | 15 | import java.util.Map; |
| 17 | import java.util.Set; | 16 | import java.util.Set; |
| @@ -80,16 +79,32 @@ public class EntryRenamer | |||
| 80 | { | 79 | { |
| 81 | // for each key/value pair... | 80 | // for each key/value pair... |
| 82 | Set<Map.Entry<Key,Val>> entriesToAdd = Sets.newHashSet(); | 81 | Set<Map.Entry<Key,Val>> entriesToAdd = Sets.newHashSet(); |
| 83 | Iterator<Map.Entry<Key,Val>> iter = map.entries().iterator(); | 82 | for( Map.Entry<Key,Val> entry : map.entries() ) |
| 84 | while( iter.hasNext() ) | ||
| 85 | { | 83 | { |
| 86 | Map.Entry<Key,Val> entry = iter.next(); | ||
| 87 | iter.remove(); | ||
| 88 | entriesToAdd.add( new AbstractMap.SimpleEntry<Key,Val>( | 84 | entriesToAdd.add( new AbstractMap.SimpleEntry<Key,Val>( |
| 89 | renameMethodsInThing( renames, entry.getKey() ), | 85 | renameMethodsInThing( renames, entry.getKey() ), |
| 90 | renameMethodsInThing( renames, entry.getValue() ) | 86 | renameMethodsInThing( renames, entry.getValue() ) |
| 91 | ) ); | 87 | ) ); |
| 92 | } | 88 | } |
| 89 | map.clear(); | ||
| 90 | for( Map.Entry<Key,Val> entry : entriesToAdd ) | ||
| 91 | { | ||
| 92 | map.put( entry.getKey(), entry.getValue() ); | ||
| 93 | } | ||
| 94 | } | ||
| 95 | |||
| 96 | public static <Key,Val> void renameMethodsInMap( Map<MethodEntry,MethodEntry> renames, Map<Key,Val> map ) | ||
| 97 | { | ||
| 98 | // for each key/value pair... | ||
| 99 | Set<Map.Entry<Key,Val>> entriesToAdd = Sets.newHashSet(); | ||
| 100 | for( Map.Entry<Key,Val> entry : map.entrySet() ) | ||
| 101 | { | ||
| 102 | entriesToAdd.add( new AbstractMap.SimpleEntry<Key,Val>( | ||
| 103 | renameMethodsInThing( renames, entry.getKey() ), | ||
| 104 | renameMethodsInThing( renames, entry.getValue() ) | ||
| 105 | ) ); | ||
| 106 | } | ||
| 107 | map.clear(); | ||
| 93 | for( Map.Entry<Key,Val> entry : entriesToAdd ) | 108 | for( Map.Entry<Key,Val> entry : entriesToAdd ) |
| 94 | { | 109 | { |
| 95 | map.put( entry.getKey(), entry.getValue() ); | 110 | map.put( entry.getKey(), entry.getValue() ); |