Used idea SmartList and SingletonList in some cases instead ArrayList.

Removed unused imports.
This commit is contained in:
develar
2013-06-15 16:12:02 +04:00
committed by Zalim Bashorov
parent 2cce4c575a
commit d64a896c12
4 changed files with 14 additions and 13 deletions
@@ -16,11 +16,8 @@
package org.jetbrains.k2js.translate.expression; package org.jetbrains.k2js.translate.expression;
import com.google.common.collect.Lists; import com.google.dart.compiler.backend.js.ast.*;
import com.google.dart.compiler.backend.js.ast.JsBlock; import com.intellij.util.SmartList;
import com.google.dart.compiler.backend.js.ast.JsCatch;
import com.google.dart.compiler.backend.js.ast.JsName;
import com.google.dart.compiler.backend.js.ast.JsTry;
import org.jetbrains.annotations.NotNull; import org.jetbrains.annotations.NotNull;
import org.jetbrains.annotations.Nullable; import org.jetbrains.annotations.Nullable;
import org.jetbrains.jet.lang.psi.*; import org.jetbrains.jet.lang.psi.*;
@@ -70,7 +67,7 @@ public final class TryTranslator extends AbstractTranslator {
@NotNull @NotNull
private List<JsCatch> translateCatches() { private List<JsCatch> translateCatches() {
List<JsCatch> result = Lists.newArrayList(); List<JsCatch> result = new SmartList<JsCatch>();
for (JetCatchClause catchClause : expression.getCatchClauses()) { for (JetCatchClause catchClause : expression.getCatchClauses()) {
result.add(translateCatchClause(catchClause)); result.add(translateCatchClause(catchClause));
} }
@@ -16,10 +16,10 @@
package org.jetbrains.k2js.translate.intrinsic.functions.basic; package org.jetbrains.k2js.translate.intrinsic.functions.basic;
import com.google.common.collect.Lists;
import com.google.dart.compiler.backend.js.ast.JsExpression; import com.google.dart.compiler.backend.js.ast.JsExpression;
import com.google.dart.compiler.backend.js.ast.JsInvocation; import com.google.dart.compiler.backend.js.ast.JsInvocation;
import com.google.dart.compiler.backend.js.ast.JsNameRef; import com.google.dart.compiler.backend.js.ast.JsNameRef;
import com.intellij.util.SmartList;
import org.jetbrains.annotations.NotNull; import org.jetbrains.annotations.NotNull;
import org.jetbrains.annotations.Nullable; import org.jetbrains.annotations.Nullable;
import org.jetbrains.k2js.translate.context.TranslationContext; import org.jetbrains.k2js.translate.context.TranslationContext;
@@ -60,8 +60,7 @@ public final class CallStandardMethodIntrinsic extends FunctionIntrinsic {
@NotNull @NotNull
private static List<JsExpression> composeArguments(@Nullable JsExpression receiver, @NotNull List<JsExpression> arguments) { private static List<JsExpression> composeArguments(@Nullable JsExpression receiver, @NotNull List<JsExpression> arguments) {
if (receiver != null) { if (receiver != null) {
List<JsExpression> args = Lists.newArrayList(); List<JsExpression> args = new SmartList<JsExpression>(receiver);
args.add(receiver);
args.addAll(arguments); args.addAll(arguments);
return args; return args;
} }
@@ -30,7 +30,6 @@ import org.jetbrains.k2js.translate.context.TranslationContext;
import org.jetbrains.k2js.translate.general.AbstractTranslator; import org.jetbrains.k2js.translate.general.AbstractTranslator;
import org.jetbrains.k2js.translate.general.Translation; import org.jetbrains.k2js.translate.general.Translation;
import java.util.Arrays;
import java.util.Collections; import java.util.Collections;
import java.util.List; import java.util.List;
@@ -69,13 +68,13 @@ public abstract class AbstractCallExpressionTranslator extends AbstractTranslato
} }
if (actualArgument instanceof DefaultValueArgument) { if (actualArgument instanceof DefaultValueArgument) {
JetExpression defaultArgument = getDefaultArgument(bindingContext(), parameterDescriptor); JetExpression defaultArgument = getDefaultArgument(bindingContext(), parameterDescriptor);
return Arrays.asList(Translation.translateAsExpression(defaultArgument, context())); return Collections.singletonList(Translation.translateAsExpression(defaultArgument, context()));
} }
assert actualArgument instanceof ExpressionValueArgument; assert actualArgument instanceof ExpressionValueArgument;
assert valueArguments.size() == 1; assert valueArguments.size() == 1;
JetExpression argumentExpression = valueArguments.get(0).getArgumentExpression(); JetExpression argumentExpression = valueArguments.get(0).getArgumentExpression();
assert argumentExpression != null; assert argumentExpression != null;
return Arrays.asList(Translation.translateAsExpression(argumentExpression, context())); return Collections.singletonList(Translation.translateAsExpression(argumentExpression, context()));
} }
@NotNull @NotNull
@@ -17,6 +17,7 @@
package org.jetbrains.k2js.translate.utils; package org.jetbrains.k2js.translate.utils;
import com.google.dart.compiler.backend.js.ast.*; import com.google.dart.compiler.backend.js.ast.*;
import com.intellij.util.SmartList;
import org.jetbrains.annotations.NotNull; import org.jetbrains.annotations.NotNull;
import org.jetbrains.annotations.Nullable; import org.jetbrains.annotations.Nullable;
import org.jetbrains.jet.lang.descriptors.DeclarationDescriptor; import org.jetbrains.jet.lang.descriptors.DeclarationDescriptor;
@@ -28,6 +29,7 @@ import org.jetbrains.k2js.translate.context.TranslationContext;
import org.jetbrains.k2js.translate.general.Translation; import org.jetbrains.k2js.translate.general.Translation;
import java.util.ArrayList; import java.util.ArrayList;
import java.util.Collections;
import java.util.List; import java.util.List;
import static org.jetbrains.k2js.translate.utils.BindingUtils.getFunctionDescriptorForOperationExpression; import static org.jetbrains.k2js.translate.utils.BindingUtils.getFunctionDescriptorForOperationExpression;
@@ -76,7 +78,11 @@ public final class TranslationUtils {
@NotNull @NotNull
public static List<JsExpression> translateArgumentList(@NotNull TranslationContext context, public static List<JsExpression> translateArgumentList(@NotNull TranslationContext context,
@NotNull List<? extends ValueArgument> jetArguments) { @NotNull List<? extends ValueArgument> jetArguments) {
List<JsExpression> jsArguments = new ArrayList<JsExpression>(); if (jetArguments.isEmpty()) {
return Collections.emptyList();
}
List<JsExpression> jsArguments = new SmartList<JsExpression>();
for (ValueArgument argument : jetArguments) { for (ValueArgument argument : jetArguments) {
jsArguments.add(translateArgument(context, argument)); jsArguments.add(translateArgument(context, argument));
} }