Drop extra fields which covered by metadata: hasDefaultValue from JsParameter.

This commit is contained in:
Zalim Bashorov
2014-08-28 15:34:12 +04:00
parent aa6ab1ffee
commit 3b9232e8d4
3 changed files with 6 additions and 18 deletions
@@ -13,7 +13,6 @@ import org.jetbrains.annotations.NotNull;
public final class JsParameter extends SourceInfoAwareJsNode implements HasName {
@NotNull
private final JsName name;
private boolean hasDefaultValue = false;
public JsParameter(@NotNull JsName name) {
this.name = name;
@@ -31,14 +30,6 @@ public final class JsParameter extends SourceInfoAwareJsNode implements HasName
return name;
}
public boolean hasDefaultValue() {
return hasDefaultValue;
}
public void setHasDefaultValue(boolean hasDefaultValue) {
this.hasDefaultValue = hasDefaultValue;
}
@Override
public void accept(JsVisitor v) {
v.visitParameter(this);
@@ -53,8 +44,6 @@ public final class JsParameter extends SourceInfoAwareJsNode implements HasName
@NotNull
@Override
public JsParameter deepCopy() {
JsParameter parameter = new JsParameter(name);
parameter.setHasDefaultValue(hasDefaultValue);
return parameter.withMetadataFrom(this);
return new JsParameter(name).withMetadataFrom(this);
}
}
@@ -17,6 +17,7 @@
package org.jetbrains.k2js.inline.clean
import com.google.dart.compiler.backend.js.ast.*
import com.google.dart.compiler.backend.js.ast.metadata.hasDefaultValue
import org.jetbrains.k2js.inline.util.toIdentitySet
import org.jetbrains.k2js.inline.util.zipWithDefault
@@ -117,7 +118,7 @@ private fun getDefaultParamsNames(
val argsParams = args.zipWithDefault(params, Namer.UNDEFINED_EXPRESSION)
val relevantParams = argsParams.stream()
.filter { it.second.hasDefaultValue() }
.filter { it.second.hasDefaultValue }
.filter { initialized == !isUndefined(it.first) }
val names = relevantParams.map { it.second.getName() }
@@ -17,10 +17,8 @@
package org.jetbrains.k2js.translate.expression;
import com.google.dart.compiler.backend.js.ast.JsFunction;
import com.google.dart.compiler.backend.js.ast.JsName;
import com.google.dart.compiler.backend.js.ast.JsParameter;
import com.google.dart.compiler.backend.js.ast.JsPropertyInitializer;
import com.google.dart.compiler.backend.js.ast.*;
import com.google.dart.compiler.backend.js.ast.metadata.MetadataPackage;
import com.intellij.util.SmartList;
import org.jetbrains.annotations.NotNull;
import org.jetbrains.annotations.Nullable;
@@ -131,7 +129,7 @@ public final class FunctionTranslator extends AbstractTranslator {
public static void addParameters(List<JsParameter> list, FunctionDescriptor descriptor, TranslationContext context) {
for (ValueParameterDescriptor valueParameter : descriptor.getValueParameters()) {
JsParameter jsParameter = new JsParameter(context.getNameForDescriptor(valueParameter));
jsParameter.setHasDefaultValue(valueParameter.hasDefaultValue());
MetadataPackage.setHasDefaultValue(jsParameter, valueParameter.hasDefaultValue());
list.add(jsParameter);
}
}