use more compact map implementation in ObservableBindingTrace

This commit is contained in:
Dmitry Jemerov
2015-06-01 21:33:12 +02:00
parent f545c9ddac
commit 5ba283397b
@@ -16,7 +16,7 @@
package org.jetbrains.kotlin.resolve; package org.jetbrains.kotlin.resolve;
import com.google.common.collect.Maps; import com.intellij.util.SmartFMap;
import org.jetbrains.annotations.NotNull; import org.jetbrains.annotations.NotNull;
import org.jetbrains.annotations.Nullable; import org.jetbrains.annotations.Nullable;
import org.jetbrains.kotlin.diagnostics.Diagnostic; import org.jetbrains.kotlin.diagnostics.Diagnostic;
@@ -26,7 +26,6 @@ import org.jetbrains.kotlin.util.slicedMap.ReadOnlySlice;
import org.jetbrains.kotlin.util.slicedMap.WritableSlice; import org.jetbrains.kotlin.util.slicedMap.WritableSlice;
import java.util.Collection; import java.util.Collection;
import java.util.Map;
public class ObservableBindingTrace implements BindingTrace { public class ObservableBindingTrace implements BindingTrace {
public interface RecordHandler<K, V> { public interface RecordHandler<K, V> {
@@ -36,7 +35,7 @@ public class ObservableBindingTrace implements BindingTrace {
private final BindingTrace originalTrace; private final BindingTrace originalTrace;
private Map<WritableSlice, RecordHandler> handlers = Maps.newHashMap(); private SmartFMap<WritableSlice, RecordHandler> handlers = SmartFMap.emptyMap();
public ObservableBindingTrace(BindingTrace originalTrace) { public ObservableBindingTrace(BindingTrace originalTrace) {
this.originalTrace = originalTrace; this.originalTrace = originalTrace;
@@ -89,7 +88,7 @@ public class ObservableBindingTrace implements BindingTrace {
} }
public <K, V> ObservableBindingTrace addHandler(@NotNull WritableSlice<K, V> slice, @NotNull RecordHandler<K, V> handler) { public <K, V> ObservableBindingTrace addHandler(@NotNull WritableSlice<K, V> slice, @NotNull RecordHandler<K, V> handler) {
handlers.put(slice, handler); handlers = handlers.plus(slice, handler);
return this; return this;
} }