src/share/classes/com/sun/tools/javac/comp/LambdaToMethod.java

changeset 3111
51997141b15c
parent 2701
6906fc8bc514
child 2702
9ca8d8713094
child 3113
0d7fcabf56ed
equal deleted inserted replaced
3015:e9d4b2ca70d4 3111:51997141b15c
1177 } 1177 }
1178 1178
1179 @Override 1179 @Override
1180 public void visitClassDef(JCClassDecl tree) { 1180 public void visitClassDef(JCClassDecl tree) {
1181 List<Frame> prevStack = frameStack; 1181 List<Frame> prevStack = frameStack;
1182 int prevLambdaCount = lambdaCount;
1182 SyntheticMethodNameCounter prevSyntheticMethodNameCounts = 1183 SyntheticMethodNameCounter prevSyntheticMethodNameCounts =
1183 syntheticMethodNameCounts; 1184 syntheticMethodNameCounts;
1184 Map<ClassSymbol, Symbol> prevClinits = clinits; 1185 Map<ClassSymbol, Symbol> prevClinits = clinits;
1185 DiagnosticSource prevSource = log.currentSource(); 1186 DiagnosticSource prevSource = log.currentSource();
1186 try { 1187 try {
1187 log.useSource(tree.sym.sourcefile); 1188 log.useSource(tree.sym.sourcefile);
1189 lambdaCount = 0;
1188 syntheticMethodNameCounts = new SyntheticMethodNameCounter(); 1190 syntheticMethodNameCounts = new SyntheticMethodNameCounter();
1189 prevClinits = new HashMap<ClassSymbol, Symbol>(); 1191 prevClinits = new HashMap<ClassSymbol, Symbol>();
1190 if (tree.sym.owner.kind == MTH) { 1192 if (tree.sym.owner.kind == MTH) {
1191 localClassDefs.put(tree.sym, tree); 1193 localClassDefs.put(tree.sym, tree);
1192 } 1194 }
1209 super.visitClassDef(tree); 1211 super.visitClassDef(tree);
1210 } 1212 }
1211 finally { 1213 finally {
1212 log.useSource(prevSource.getFile()); 1214 log.useSource(prevSource.getFile());
1213 frameStack = prevStack; 1215 frameStack = prevStack;
1216 lambdaCount = prevLambdaCount;
1214 syntheticMethodNameCounts = prevSyntheticMethodNameCounts; 1217 syntheticMethodNameCounts = prevSyntheticMethodNameCounts;
1215 clinits = prevClinits; 1218 clinits = prevClinits;
1216 } 1219 }
1217 } 1220 }
1218 1221

mercurial