cleanup: use putIfAbsent
This commit is contained in:
@@ -1,4 +1,4 @@
|
|||||||
// Copyright 2000-2017 JetBrains s.r.o. Use of this source code is governed by the Apache 2.0 license that can be found in the LICENSE file.
|
// Copyright 2000-2018 JetBrains s.r.o. Use of this source code is governed by the Apache 2.0 license that can be found in the LICENSE file.
|
||||||
package org.jetbrains.java.decompiler.main.collectors;
|
package org.jetbrains.java.decompiler.main.collectors;
|
||||||
|
|
||||||
import org.jetbrains.java.decompiler.struct.attr.StructLineNumberTableAttribute;
|
import org.jetbrains.java.decompiler.struct.attr.StructLineNumberTableAttribute;
|
||||||
@@ -28,9 +28,7 @@ public class BytecodeMappingTracer {
|
|||||||
}
|
}
|
||||||
|
|
||||||
public void addMapping(int bytecode_offset) {
|
public void addMapping(int bytecode_offset) {
|
||||||
if (!mapping.containsKey(bytecode_offset)) {
|
mapping.putIfAbsent(bytecode_offset, currentSourceLine);
|
||||||
mapping.put(bytecode_offset, currentSourceLine);
|
|
||||||
}
|
|
||||||
}
|
}
|
||||||
|
|
||||||
public void addMapping(Set<Integer> bytecode_offsets) {
|
public void addMapping(Set<Integer> bytecode_offsets) {
|
||||||
@@ -44,9 +42,7 @@ public class BytecodeMappingTracer {
|
|||||||
public void addTracer(BytecodeMappingTracer tracer) {
|
public void addTracer(BytecodeMappingTracer tracer) {
|
||||||
if (tracer != null) {
|
if (tracer != null) {
|
||||||
for (Entry<Integer, Integer> entry : tracer.mapping.entrySet()) {
|
for (Entry<Integer, Integer> entry : tracer.mapping.entrySet()) {
|
||||||
if (!mapping.containsKey(entry.getKey())) {
|
mapping.putIfAbsent(entry.getKey(), entry.getValue());
|
||||||
mapping.put(entry.getKey(), entry.getValue());
|
|
||||||
}
|
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -1,6 +1,4 @@
|
|||||||
/*
|
// Copyright 2000-2018 JetBrains s.r.o. Use of this source code is governed by the Apache 2.0 license that can be found in the LICENSE file.
|
||||||
* Copyright 2000-2017 JetBrains s.r.o. Use of this source code is governed by the Apache 2.0 license that can be found in the LICENSE file.
|
|
||||||
*/
|
|
||||||
package org.jetbrains.java.decompiler.main.collectors;
|
package org.jetbrains.java.decompiler.main.collectors;
|
||||||
|
|
||||||
import org.jetbrains.java.decompiler.main.DecompilerContext;
|
import org.jetbrains.java.decompiler.main.DecompilerContext;
|
||||||
@@ -24,9 +22,7 @@ public class BytecodeSourceMapper {
|
|||||||
Map<Integer, Integer> method_mapping = class_mapping.computeIfAbsent(methodName, k -> new HashMap<>());
|
Map<Integer, Integer> method_mapping = class_mapping.computeIfAbsent(methodName, k -> new HashMap<>());
|
||||||
|
|
||||||
// don't overwrite
|
// don't overwrite
|
||||||
if (!method_mapping.containsKey(bytecodeOffset)) {
|
method_mapping.putIfAbsent(bytecodeOffset, sourceLine);
|
||||||
method_mapping.put(bytecodeOffset, sourceLine);
|
|
||||||
}
|
|
||||||
}
|
}
|
||||||
|
|
||||||
public void addTracer(String className, String methodName, BytecodeMappingTracer tracer) {
|
public void addTracer(String className, String methodName, BytecodeMappingTracer tracer) {
|
||||||
|
|||||||
Reference in New Issue
Block a user