diff --git a/core/descriptors/src/org/jetbrains/jet/lang/descriptors/Visibilities.java b/core/descriptors/src/org/jetbrains/jet/lang/descriptors/Visibilities.java index edd50b72ca2..3a7dac553a5 100644 --- a/core/descriptors/src/org/jetbrains/jet/lang/descriptors/Visibilities.java +++ b/core/descriptors/src/org/jetbrains/jet/lang/descriptors/Visibilities.java @@ -16,12 +16,13 @@ package org.jetbrains.jet.lang.descriptors; -import com.google.common.collect.Maps; -import com.google.common.collect.Sets; +import kotlin.KotlinPackage; import org.jetbrains.annotations.NotNull; import org.jetbrains.annotations.Nullable; import org.jetbrains.jet.lang.resolve.DescriptorUtils; +import org.jetbrains.jet.utils.UtilsPackage; +import java.util.Collections; import java.util.Map; import java.util.Set; @@ -108,7 +109,8 @@ public class Visibilities { } }; - public static final Set INVISIBLE_FROM_OTHER_MODULES = Sets.newHashSet(PRIVATE, INTERNAL, LOCAL); + public static final Set INVISIBLE_FROM_OTHER_MODULES = + Collections.unmodifiableSet(KotlinPackage.setOf(PRIVATE, INTERNAL, LOCAL)); private Visibilities() { } @@ -132,13 +134,15 @@ public class Visibilities { return null; } - private static final Map ORDERED_VISIBILITIES = Maps.newHashMap(); + private static final Map ORDERED_VISIBILITIES; static { - ORDERED_VISIBILITIES.put(PRIVATE, 0); - ORDERED_VISIBILITIES.put(INTERNAL, 1); - ORDERED_VISIBILITIES.put(PROTECTED, 1); - ORDERED_VISIBILITIES.put(PUBLIC, 2); + Map visibilities = UtilsPackage.newHashMapWithExpectedSize(4); + visibilities.put(PRIVATE, 0); + visibilities.put(INTERNAL, 1); + visibilities.put(PROTECTED, 1); + visibilities.put(PUBLIC, 2); + ORDERED_VISIBILITIES = Collections.unmodifiableMap(visibilities); } /*package*/ diff --git a/core/descriptors/src/org/jetbrains/jet/lang/descriptors/impl/CompositePackageFragmentProvider.java b/core/descriptors/src/org/jetbrains/jet/lang/descriptors/impl/CompositePackageFragmentProvider.java index 3b5c327df09..bfe36cff053 100644 --- a/core/descriptors/src/org/jetbrains/jet/lang/descriptors/impl/CompositePackageFragmentProvider.java +++ b/core/descriptors/src/org/jetbrains/jet/lang/descriptors/impl/CompositePackageFragmentProvider.java @@ -16,16 +16,12 @@ package org.jetbrains.jet.lang.descriptors.impl; -import com.google.common.collect.Sets; import org.jetbrains.annotations.NotNull; import org.jetbrains.jet.lang.descriptors.PackageFragmentDescriptor; import org.jetbrains.jet.lang.descriptors.PackageFragmentProvider; import org.jetbrains.jet.lang.resolve.name.FqName; -import java.util.ArrayList; -import java.util.Collection; -import java.util.List; -import java.util.Set; +import java.util.*; public class CompositePackageFragmentProvider implements PackageFragmentProvider { // can be modified from outside @@ -49,7 +45,7 @@ public class CompositePackageFragmentProvider implements PackageFragmentProvider @NotNull @Override public Collection getSubPackagesOf(@NotNull FqName fqName) { - Set result = Sets.newHashSet(); + Set result = new HashSet(); for (PackageFragmentProvider provider : providers) { result.addAll(provider.getSubPackagesOf(fqName)); } diff --git a/core/descriptors/src/org/jetbrains/jet/lang/descriptors/impl/FunctionDescriptorImpl.java b/core/descriptors/src/org/jetbrains/jet/lang/descriptors/impl/FunctionDescriptorImpl.java index 79c0079403e..9d1d1ed9e6d 100644 --- a/core/descriptors/src/org/jetbrains/jet/lang/descriptors/impl/FunctionDescriptorImpl.java +++ b/core/descriptors/src/org/jetbrains/jet/lang/descriptors/impl/FunctionDescriptorImpl.java @@ -16,7 +16,6 @@ package org.jetbrains.jet.lang.descriptors.impl; -import com.google.common.collect.Sets; import org.jetbrains.annotations.NotNull; import org.jetbrains.annotations.Nullable; import org.jetbrains.jet.lang.descriptors.*; @@ -30,20 +29,19 @@ import org.jetbrains.jet.lang.types.TypeSubstitutor; import org.jetbrains.jet.lang.types.Variance; import java.util.ArrayList; +import java.util.LinkedHashSet; import java.util.List; import java.util.Set; public abstract class FunctionDescriptorImpl extends DeclarationDescriptorNonRootImpl implements FunctionDescriptor { - - protected List typeParameters; - protected List unsubstitutedValueParameters; - protected JetType unsubstitutedReturnType; + private List typeParameters; + private List unsubstitutedValueParameters; + private JetType unsubstitutedReturnType; private ReceiverParameterDescriptor receiverParameter; - protected ReceiverParameterDescriptor expectedThisObject; - protected Modality modality; - - protected Visibility visibility; - protected final Set overriddenFunctions = Sets.newLinkedHashSet(); // LinkedHashSet is essential here + private ReceiverParameterDescriptor expectedThisObject; + private Modality modality; + private Visibility visibility; + private final Set overriddenFunctions = new LinkedHashSet(); // LinkedHashSet is essential here private final FunctionDescriptor original; private final Kind kind; diff --git a/core/descriptors/src/org/jetbrains/jet/lang/descriptors/impl/PropertyAccessorDescriptorImpl.java b/core/descriptors/src/org/jetbrains/jet/lang/descriptors/impl/PropertyAccessorDescriptorImpl.java index 2b0b0685d8a..b9ba2a6c5d9 100644 --- a/core/descriptors/src/org/jetbrains/jet/lang/descriptors/impl/PropertyAccessorDescriptorImpl.java +++ b/core/descriptors/src/org/jetbrains/jet/lang/descriptors/impl/PropertyAccessorDescriptorImpl.java @@ -16,7 +16,6 @@ package org.jetbrains.jet.lang.descriptors.impl; -import com.google.common.collect.Sets; import org.jetbrains.annotations.NotNull; import org.jetbrains.annotations.Nullable; import org.jetbrains.jet.lang.descriptors.*; @@ -25,6 +24,7 @@ import org.jetbrains.jet.lang.resolve.name.Name; import org.jetbrains.jet.lang.types.TypeSubstitutor; import java.util.Collections; +import java.util.LinkedHashSet; import java.util.List; import java.util.Set; @@ -144,7 +144,8 @@ public abstract class PropertyAccessorDescriptorImpl extends DeclarationDescript @NotNull protected Set getOverriddenDescriptors(boolean isGetter) { Set overriddenProperties = getCorrespondingProperty().getOverriddenDescriptors(); - Set overriddenAccessors = Sets.newLinkedHashSet(); // LinkedHashSet for determinism + // LinkedHashSet for determinism + Set overriddenAccessors = new LinkedHashSet(); for (PropertyDescriptor overriddenProperty : overriddenProperties) { PropertyAccessorDescriptor accessorDescriptor = isGetter ? overriddenProperty.getGetter() : overriddenProperty.getSetter(); if (accessorDescriptor != null) { diff --git a/core/descriptors/src/org/jetbrains/jet/lang/descriptors/impl/PropertyDescriptorImpl.java b/core/descriptors/src/org/jetbrains/jet/lang/descriptors/impl/PropertyDescriptorImpl.java index 11a400fc28c..ae990235989 100644 --- a/core/descriptors/src/org/jetbrains/jet/lang/descriptors/impl/PropertyDescriptorImpl.java +++ b/core/descriptors/src/org/jetbrains/jet/lang/descriptors/impl/PropertyDescriptorImpl.java @@ -16,7 +16,6 @@ package org.jetbrains.jet.lang.descriptors.impl; -import com.google.common.collect.Sets; import org.jetbrains.annotations.NotNull; import org.jetbrains.annotations.Nullable; import org.jetbrains.jet.lang.descriptors.*; @@ -30,17 +29,13 @@ import org.jetbrains.jet.lang.types.TypeSubstitutor; import org.jetbrains.jet.lang.types.Variance; import org.jetbrains.jet.lang.types.lang.KotlinBuiltIns; -import java.util.ArrayList; -import java.util.Collections; -import java.util.List; -import java.util.Set; +import java.util.*; public class PropertyDescriptorImpl extends VariableDescriptorImpl implements PropertyDescriptor { - private final Modality modality; private Visibility visibility; private final boolean isVar; - private final Set overriddenProperties = Sets.newLinkedHashSet(); // LinkedHashSet is essential here + private final Set overriddenProperties = new LinkedHashSet(); // LinkedHashSet is essential here private final PropertyDescriptor original; private final Kind kind; diff --git a/core/descriptors/src/org/jetbrains/jet/lang/descriptors/impl/TypeParameterDescriptorImpl.java b/core/descriptors/src/org/jetbrains/jet/lang/descriptors/impl/TypeParameterDescriptorImpl.java index 619b161af70..fc96f9ce9b8 100644 --- a/core/descriptors/src/org/jetbrains/jet/lang/descriptors/impl/TypeParameterDescriptorImpl.java +++ b/core/descriptors/src/org/jetbrains/jet/lang/descriptors/impl/TypeParameterDescriptorImpl.java @@ -16,7 +16,6 @@ package org.jetbrains.jet.lang.descriptors.impl; -import com.google.common.collect.Sets; import org.jetbrains.annotations.NotNull; import org.jetbrains.jet.lang.descriptors.DeclarationDescriptor; import org.jetbrains.jet.lang.descriptors.SourceElement; @@ -32,6 +31,7 @@ import org.jetbrains.jet.lang.types.lang.KotlinBuiltIns; import org.jetbrains.jet.storage.LockBasedStorageManager; import java.util.Collections; +import java.util.LinkedHashSet; import java.util.Set; public class TypeParameterDescriptorImpl extends AbstractTypeParameterDescriptor { @@ -62,7 +62,7 @@ public class TypeParameterDescriptorImpl extends AbstractTypeParameterDescriptor return new TypeParameterDescriptorImpl(containingDeclaration, annotations, reified, variance, name, index, source); } - private final Set upperBounds = Sets.newLinkedHashSet(); + private final Set upperBounds = new LinkedHashSet(); private boolean initialized = false; private TypeParameterDescriptorImpl( diff --git a/core/descriptors/src/org/jetbrains/jet/lang/descriptors/impl/ValueParameterDescriptorImpl.java b/core/descriptors/src/org/jetbrains/jet/lang/descriptors/impl/ValueParameterDescriptorImpl.java index 572e3f23122..dac58fe6687 100644 --- a/core/descriptors/src/org/jetbrains/jet/lang/descriptors/impl/ValueParameterDescriptorImpl.java +++ b/core/descriptors/src/org/jetbrains/jet/lang/descriptors/impl/ValueParameterDescriptorImpl.java @@ -16,7 +16,6 @@ package org.jetbrains.jet.lang.descriptors.impl; -import com.google.common.collect.Sets; import org.jetbrains.annotations.NotNull; import org.jetbrains.annotations.Nullable; import org.jetbrains.jet.lang.descriptors.*; @@ -26,17 +25,16 @@ import org.jetbrains.jet.lang.types.JetType; import org.jetbrains.jet.lang.types.TypeSubstitutor; import java.util.Collections; +import java.util.LinkedHashSet; import java.util.Set; public class ValueParameterDescriptorImpl extends VariableDescriptorImpl implements ValueParameterDescriptor { private Boolean hasDefaultValue; private final boolean declaresDefaultValue; - private final JetType varargElementType; private final int index; private final ValueParameterDescriptor original; - - private final Set overriddenDescriptors = Sets.newLinkedHashSet(); // Linked is essential + private final Set overriddenDescriptors = new LinkedHashSet(); // Linked is essential private boolean overriddenDescriptorsLocked = false; private final Set readOnlyOverriddenDescriptors = Collections.unmodifiableSet(overriddenDescriptors); diff --git a/core/descriptors/src/org/jetbrains/jet/lang/resolve/OverridingUtil.java b/core/descriptors/src/org/jetbrains/jet/lang/resolve/OverridingUtil.java index 4237e799674..9b83ae4cbdf 100644 --- a/core/descriptors/src/org/jetbrains/jet/lang/resolve/OverridingUtil.java +++ b/core/descriptors/src/org/jetbrains/jet/lang/resolve/OverridingUtil.java @@ -16,7 +16,6 @@ package org.jetbrains.jet.lang.resolve; -import com.google.common.collect.Sets; import com.intellij.util.containers.ContainerUtil; import kotlin.Function1; import kotlin.KotlinPackage; @@ -250,7 +249,7 @@ public class OverridingUtil { @NotNull ClassDescriptor current, @NotNull DescriptorSink sink ) { - Collection notOverridden = Sets.newLinkedHashSet(membersFromSupertypes); + Collection notOverridden = new LinkedHashSet(membersFromSupertypes); for (CallableMemberDescriptor fromCurrent : membersFromCurrent) { Collection bound = diff --git a/core/descriptors/src/org/jetbrains/jet/lang/resolve/calls/inference/ConstraintPosition.java b/core/descriptors/src/org/jetbrains/jet/lang/resolve/calls/inference/ConstraintPosition.java index 113d93abbfa..ab84613f92f 100644 --- a/core/descriptors/src/org/jetbrains/jet/lang/resolve/calls/inference/ConstraintPosition.java +++ b/core/descriptors/src/org/jetbrains/jet/lang/resolve/calls/inference/ConstraintPosition.java @@ -16,13 +16,13 @@ package org.jetbrains.jet.lang.resolve.calls.inference; -import com.google.common.collect.Maps; import kotlin.Function1; import kotlin.KotlinPackage; import org.jetbrains.annotations.NotNull; import java.util.Arrays; import java.util.Collection; +import java.util.HashMap; import java.util.Map; public class ConstraintPosition { @@ -31,8 +31,8 @@ public class ConstraintPosition { public static final ConstraintPosition FROM_COMPLETER = new ConstraintPosition("FROM_COMPLETER", true); public static final ConstraintPosition SPECIAL = new ConstraintPosition("SPECIAL", true); - private static final Map valueParameterPositions = Maps.newHashMap(); - private static final Map typeBoundPositions = Maps.newHashMap(); + private static final Map valueParameterPositions = new HashMap(); + private static final Map typeBoundPositions = new HashMap(); public static ConstraintPosition getValueParameterPosition(int index) { ConstraintPosition position = valueParameterPositions.get(index); diff --git a/core/descriptors/src/org/jetbrains/jet/lang/resolve/calls/inference/ConstraintSystemImpl.java b/core/descriptors/src/org/jetbrains/jet/lang/resolve/calls/inference/ConstraintSystemImpl.java index 0e4893773cd..fe324498bb5 100644 --- a/core/descriptors/src/org/jetbrains/jet/lang/resolve/calls/inference/ConstraintSystemImpl.java +++ b/core/descriptors/src/org/jetbrains/jet/lang/resolve/calls/inference/ConstraintSystemImpl.java @@ -16,8 +16,6 @@ package org.jetbrains.jet.lang.resolve.calls.inference; -import com.google.common.collect.Maps; -import com.google.common.collect.Sets; import kotlin.Function1; import kotlin.KotlinPackage; import org.jetbrains.annotations.NotNull; @@ -30,10 +28,7 @@ import org.jetbrains.jet.lang.types.checker.TypingConstraints; import org.jetbrains.jet.lang.types.lang.KotlinBuiltIns; import org.jetbrains.jet.utils.UtilsPackage; -import java.util.ArrayList; -import java.util.List; -import java.util.Map; -import java.util.Set; +import java.util.*; import static org.jetbrains.jet.lang.resolve.calls.inference.ConstraintSystemImpl.ConstraintKind.EQUAL; import static org.jetbrains.jet.lang.resolve.calls.inference.ConstraintSystemImpl.ConstraintKind.SUB_TYPE; @@ -47,8 +42,9 @@ public class ConstraintSystemImpl implements ConstraintSystem { SUB_TYPE, EQUAL } - private final Map typeParameterBounds = Maps.newLinkedHashMap(); - private final Set errorConstraintPositions = Sets.newHashSet(); + private final Map typeParameterBounds = + new LinkedHashMap(); + private final Set errorConstraintPositions = new HashSet(); private boolean hasErrorInConstrainingTypes; private final ConstraintSystemStatus constraintSystemStatus = new ConstraintSystemStatus() { @@ -123,7 +119,8 @@ public class ConstraintSystemImpl implements ConstraintSystem { @NotNull Map typeParameterBounds, @NotNull Function1 getDefaultTypeProjection ) { - Map substitutionContext = Maps.newHashMap(); + Map substitutionContext = + UtilsPackage.newHashMapWithExpectedSize(typeParameterBounds.size()); for (Map.Entry entry : typeParameterBounds.entrySet()) { TypeParameterDescriptor typeParameter = entry.getKey(); TypeBounds typeBounds = entry.getValue(); @@ -221,12 +218,11 @@ public class ConstraintSystemImpl implements ConstraintSystem { } @NotNull - public ConstraintSystem filterConstraintsOut(@NotNull ConstraintPosition... excludePositions) { - final Set positions = Sets.newHashSet(excludePositions); + public ConstraintSystem filterConstraintsOut(@NotNull final ConstraintPosition excludePosition) { return filterConstraints(new Function1() { @Override public Boolean invoke(ConstraintPosition constraintPosition) { - return !positions.contains(constraintPosition); + return !excludePosition.equals(constraintPosition); } }); } diff --git a/core/descriptors/src/org/jetbrains/jet/lang/resolve/calls/inference/TypeBoundsImpl.java b/core/descriptors/src/org/jetbrains/jet/lang/resolve/calls/inference/TypeBoundsImpl.java index 2e87d672590..ddb61ad1293 100644 --- a/core/descriptors/src/org/jetbrains/jet/lang/resolve/calls/inference/TypeBoundsImpl.java +++ b/core/descriptors/src/org/jetbrains/jet/lang/resolve/calls/inference/TypeBoundsImpl.java @@ -16,7 +16,6 @@ package org.jetbrains.jet.lang.resolve.calls.inference; -import com.google.common.collect.Sets; import com.intellij.util.containers.ContainerUtil; import kotlin.Function1; import kotlin.KotlinPackage; @@ -34,7 +33,7 @@ import static org.jetbrains.jet.lang.resolve.calls.inference.TypeBounds.BoundKin public class TypeBoundsImpl implements TypeBounds { private final TypeParameterDescriptor typeVariable; private final Variance varianceOfPosition; - private final Set bounds = Sets.newLinkedHashSet(); + private final Set bounds = new LinkedHashSet(); private Collection resultValues; @@ -88,7 +87,7 @@ public class TypeBoundsImpl implements TypeBounds { @NotNull BoundKind kind, @Nullable Collection errorValues ) { - Set result = Sets.newLinkedHashSet(); + Set result = new LinkedHashSet(); for (Bound bound : bounds) { if (bound.kind == kind) { if (!ErrorUtils.containsErrorType(bound.type)) { @@ -142,7 +141,7 @@ public class TypeBoundsImpl implements TypeBounds { @NotNull private Collection computeValues() { - Set values = Sets.newLinkedHashSet(); + Set values = new LinkedHashSet(); if (bounds.isEmpty()) { return Collections.emptyList(); } diff --git a/core/descriptors/src/org/jetbrains/jet/lang/resolve/scopes/ChainedScope.java b/core/descriptors/src/org/jetbrains/jet/lang/resolve/scopes/ChainedScope.java index d39c6d84f04..bc4ce9c0248 100644 --- a/core/descriptors/src/org/jetbrains/jet/lang/resolve/scopes/ChainedScope.java +++ b/core/descriptors/src/org/jetbrains/jet/lang/resolve/scopes/ChainedScope.java @@ -16,17 +16,13 @@ package org.jetbrains.jet.lang.resolve.scopes; -import com.google.common.collect.Sets; import org.jetbrains.annotations.NotNull; import org.jetbrains.annotations.TestOnly; import org.jetbrains.jet.lang.descriptors.*; import org.jetbrains.jet.lang.resolve.name.Name; import org.jetbrains.jet.utils.Printer; -import java.util.ArrayList; -import java.util.Collection; -import java.util.List; -import java.util.Set; +import java.util.*; import static org.jetbrains.jet.lang.resolve.scopes.JetScopeSelectorUtil.*; @@ -106,7 +102,7 @@ public class ChainedScope implements JetScope { @Override public Collection getAllDescriptors() { if (allDescriptors == null) { - allDescriptors = Sets.newHashSet(); + allDescriptors = new HashSet(); for (JetScope scope : scopeChain) { allDescriptors.addAll(scope.getAllDescriptors()); } diff --git a/core/descriptors/src/org/jetbrains/jet/lang/resolve/scopes/JetScopeSelectorUtil.java b/core/descriptors/src/org/jetbrains/jet/lang/resolve/scopes/JetScopeSelectorUtil.java index 4dae9714be6..ee760034272 100644 --- a/core/descriptors/src/org/jetbrains/jet/lang/resolve/scopes/JetScopeSelectorUtil.java +++ b/core/descriptors/src/org/jetbrains/jet/lang/resolve/scopes/JetScopeSelectorUtil.java @@ -16,15 +16,12 @@ package org.jetbrains.jet.lang.resolve.scopes; -import com.google.common.collect.Sets; import org.jetbrains.annotations.NotNull; import org.jetbrains.annotations.Nullable; import org.jetbrains.jet.lang.descriptors.*; import org.jetbrains.jet.lang.resolve.name.Name; -import java.util.Collection; -import java.util.Collections; -import java.util.Set; +import java.util.*; public class JetScopeSelectorUtil { private JetScopeSelectorUtil() { @@ -47,7 +44,7 @@ public class JetScopeSelectorUtil { @NotNull public static Collection collect(Collection scopes, ScopeByNameMultiSelector selector, Name name) { - Set descriptors = Sets.newHashSet(); + Set descriptors = new HashSet(); for (JetScope scope : scopes) { descriptors.addAll(selector.get(scope, name)); @@ -58,7 +55,7 @@ public class JetScopeSelectorUtil { @NotNull public static Collection collect(Collection scopes, ScopeDescriptorSelector selector) { - Set descriptors = Sets.newHashSet(); + Set descriptors = new HashSet(); for (JetScope scope : scopes) { descriptors.addAll(selector.get(scope)); @@ -146,8 +143,7 @@ public class JetScopeSelectorUtil { ) { if (scopes.length == 0) return Collections.emptySet(); - Set descriptors = Sets.newLinkedHashSet(); - + Set descriptors = new LinkedHashSet(); for (JetScope jetScope : scopes) { descriptors.addAll(descriptorsSelector.get(jetScope, name)); } diff --git a/core/descriptors/src/org/jetbrains/jet/lang/resolve/scopes/SubstitutingScope.java b/core/descriptors/src/org/jetbrains/jet/lang/resolve/scopes/SubstitutingScope.java index 28a91f8db36..eb1cfb393b6 100644 --- a/core/descriptors/src/org/jetbrains/jet/lang/resolve/scopes/SubstitutingScope.java +++ b/core/descriptors/src/org/jetbrains/jet/lang/resolve/scopes/SubstitutingScope.java @@ -16,8 +16,6 @@ package org.jetbrains.jet.lang.resolve.scopes; -import com.google.common.collect.Maps; -import com.google.common.collect.Sets; import org.jetbrains.annotations.NotNull; import org.jetbrains.annotations.Nullable; import org.jetbrains.annotations.TestOnly; @@ -25,11 +23,9 @@ import org.jetbrains.jet.lang.descriptors.*; import org.jetbrains.jet.lang.resolve.name.Name; import org.jetbrains.jet.lang.types.TypeSubstitutor; import org.jetbrains.jet.utils.Printer; +import org.jetbrains.jet.utils.UtilsPackage; -import java.util.Collection; -import java.util.List; -import java.util.Map; -import java.util.Set; +import java.util.*; public class SubstitutingScope implements JetScope { @@ -50,7 +46,7 @@ public class SubstitutingScope implements JetScope { if (substitutor.isEmpty()) return descriptor; if (substitutedDescriptors == null) { - substitutedDescriptors = Maps.newHashMap(); + substitutedDescriptors = new HashMap(); } DeclarationDescriptor substituted = substitutedDescriptors.get(descriptor); @@ -70,7 +66,7 @@ public class SubstitutingScope implements JetScope { if (substitutor.isEmpty()) return descriptors; if (descriptors.isEmpty()) return descriptors; - Set result = Sets.newHashSetWithExpectedSize(descriptors.size()); + Set result = UtilsPackage.newHashSetWithExpectedSize(descriptors.size()); for (D descriptor : descriptors) { D substitute = substitute(descriptor); if (substitute != null) { diff --git a/core/descriptors/src/org/jetbrains/jet/lang/types/CommonSupertypes.java b/core/descriptors/src/org/jetbrains/jet/lang/types/CommonSupertypes.java index 100f56f3b9d..a68e95f5f44 100644 --- a/core/descriptors/src/org/jetbrains/jet/lang/types/CommonSupertypes.java +++ b/core/descriptors/src/org/jetbrains/jet/lang/types/CommonSupertypes.java @@ -16,7 +16,6 @@ package org.jetbrains.jet.lang.types; -import com.google.common.collect.Sets; import org.jetbrains.annotations.NotNull; import org.jetbrains.annotations.Nullable; import org.jetbrains.jet.lang.descriptors.ClassDescriptor; @@ -107,7 +106,7 @@ public class CommonSupertypes { List order = null; for (JetType type : types) { - Set visited = Sets.newHashSet(); + Set visited = new HashSet(); order = topologicallySortSuperclassesAndRecordAllInstances(type, constructorToAllInstances, visited); if (commonSuperclasses == null) { diff --git a/core/descriptors/src/org/jetbrains/jet/lang/types/IntersectionTypeConstructor.java b/core/descriptors/src/org/jetbrains/jet/lang/types/IntersectionTypeConstructor.java index 67967f4fe41..e46915e39a2 100644 --- a/core/descriptors/src/org/jetbrains/jet/lang/types/IntersectionTypeConstructor.java +++ b/core/descriptors/src/org/jetbrains/jet/lang/types/IntersectionTypeConstructor.java @@ -16,8 +16,6 @@ package org.jetbrains.jet.lang.types; - -import com.google.common.collect.Sets; import org.jetbrains.annotations.NotNull; import org.jetbrains.jet.lang.descriptors.ClassifierDescriptor; import org.jetbrains.jet.lang.descriptors.TypeParameterDescriptor; @@ -32,7 +30,7 @@ public class IntersectionTypeConstructor extends AnnotatedImpl implements TypeCo public IntersectionTypeConstructor(Annotations annotations, Collection typesToIntersect) { super(annotations); - this.intersectedTypes = Sets.newLinkedHashSet(typesToIntersect); + this.intersectedTypes = new LinkedHashSet(typesToIntersect); this.hashCode = intersectedTypes.hashCode(); } diff --git a/core/descriptors/src/org/jetbrains/jet/lang/types/TypeUtils.java b/core/descriptors/src/org/jetbrains/jet/lang/types/TypeUtils.java index 71ad8ed003e..d4d0f404405 100644 --- a/core/descriptors/src/org/jetbrains/jet/lang/types/TypeUtils.java +++ b/core/descriptors/src/org/jetbrains/jet/lang/types/TypeUtils.java @@ -16,8 +16,6 @@ package org.jetbrains.jet.lang.types; -import com.google.common.collect.Maps; -import com.google.common.collect.Sets; import kotlin.Function1; import kotlin.KotlinPackage; import kotlin.Unit; @@ -36,6 +34,7 @@ import org.jetbrains.jet.lang.resolve.scopes.JetScope; import org.jetbrains.jet.lang.types.checker.JetTypeChecker; import org.jetbrains.jet.lang.types.lang.KotlinBuiltIns; import org.jetbrains.jet.utils.DFS; +import org.jetbrains.jet.utils.UtilsPackage; import java.util.*; @@ -138,7 +137,7 @@ public class TypeUtils { } public static boolean isIntersectionEmpty(@NotNull JetType typeA, @NotNull JetType typeB) { - return intersect(JetTypeChecker.DEFAULT, Sets.newLinkedHashSet(Arrays.asList(typeA, typeB))) == null; + return intersect(JetTypeChecker.DEFAULT, new LinkedHashSet(Arrays.asList(typeA, typeB))) == null; } @Nullable @@ -237,7 +236,7 @@ public class TypeUtils { private static boolean unify(JetType withParameters, JetType expected) { // T -> how T is used - final Map parameters = Maps.newHashMap(); + final Map parameters = new HashMap(); Function1 processor = new Function1() { @Override public Unit invoke(TypeParameterUsage parameterUsage) { @@ -469,7 +468,7 @@ public class TypeUtils { throw new IllegalArgumentException("type parameter counts do not match: " + clazz + ", " + projections); } - Map substitutions = Maps.newHashMap(); + Map substitutions = UtilsPackage.newHashMapWithExpectedSize(clazzTypeParameters.size()); for (int i = 0; i < clazzTypeParameters.size(); ++i) { TypeConstructor typeConstructor = clazzTypeParameters.get(i).getTypeConstructor(); @@ -547,7 +546,7 @@ public class TypeUtils { @NotNull private static Set getIntersectionOfSupertypes(@NotNull Collection types) { - Set upperBounds = Sets.newHashSet(); + Set upperBounds = new HashSet(); for (JetType type : types) { Collection supertypes = type.getConstructor().getSupertypes(); if (upperBounds.isEmpty()) { @@ -654,7 +653,7 @@ public class TypeUtils { } public static TypeSubstitutor makeConstantSubstitutor(Collection typeParameterDescriptors, JetType type) { - final Set constructors = Sets.newHashSet(); + final Set constructors = UtilsPackage.newHashSetWithExpectedSize(typeParameterDescriptors.size()); for (TypeParameterDescriptor typeParameterDescriptor : typeParameterDescriptors) { constructors.add(typeParameterDescriptor.getTypeConstructor()); } diff --git a/core/descriptors/src/org/jetbrains/jet/renderer/DescriptorRendererImpl.java b/core/descriptors/src/org/jetbrains/jet/renderer/DescriptorRendererImpl.java index 61fbf23fa44..1e3646a897f 100644 --- a/core/descriptors/src/org/jetbrains/jet/renderer/DescriptorRendererImpl.java +++ b/core/descriptors/src/org/jetbrains/jet/renderer/DescriptorRendererImpl.java @@ -16,7 +16,6 @@ package org.jetbrains.jet.renderer; -import com.google.common.collect.Sets; import kotlin.Function1; import kotlin.KotlinPackage; import org.jetbrains.annotations.NotNull; @@ -114,7 +113,7 @@ public class DescriptorRendererImpl implements DescriptorRenderer { this.debugMode = debugMode; this.textFormat = textFormat; this.includePropertyConstant = includePropertyConstant; - this.excludedAnnotationClasses = Sets.newHashSet(excludedAnnotationClasses); + this.excludedAnnotationClasses = new HashSet(excludedAnnotationClasses); this.prettyFunctionTypes = prettyFunctionTypes; this.uninferredTypeParameterAsName = uninferredTypeParameterAsName; this.includeSynthesizedParameterNames = includeSynthesizedParameterNames; diff --git a/core/util.runtime/src/org/jetbrains/jet/utils/collections.kt b/core/util.runtime/src/org/jetbrains/jet/utils/collections.kt index 52587adeab8..1278d44c9c2 100644 --- a/core/util.runtime/src/org/jetbrains/jet/utils/collections.kt +++ b/core/util.runtime/src/org/jetbrains/jet/utils/collections.kt @@ -18,6 +18,8 @@ package org.jetbrains.jet.utils import java.util.LinkedHashMap import java.util.ArrayList +import java.util.HashMap +import java.util.HashSet public fun Stream.valuesToMap(key: (V) -> K): Map { val map = LinkedHashMap() @@ -83,4 +85,12 @@ public fun emptyOrSingletonList(item: T?): List = if (item == null) public fun MutableCollection.addIfNotNull(t: T?) { if (t != null) add(t) -} \ No newline at end of file +} + +public fun newHashMapWithExpectedSize(expectedSize: Int): HashMap { + return HashMap(if (expectedSize < 3) 3 else expectedSize + expectedSize / 3 + 1) +} + +public fun newHashSetWithExpectedSize(expectedSize: Int): HashSet { + return HashSet(if (expectedSize < 3) 3 else expectedSize + expectedSize / 3 + 1) +}