package com.semmle.js.ast;
import com.semmle.ts.ast.ITypeExpression;
import com.semmle.ts.ast.TypeParameter;
import com.semmle.util.data.IntList;
import java.util.Collections;
import java.util.List;
/** An arrow function expression such as (x) => x*x. */
public class ArrowFunctionExpression extends AFunctionExpression {
public ArrowFunctionExpression(
SourceLocation loc, List params, Node body, Boolean generator, Boolean async) {
super(
"ArrowFunctionExpression",
loc,
null,
params,
body,
generator,
async,
Collections.emptyList(),
Collections.emptyList(),
Collections.emptyList(),
null,
null,
AFunction.noOptionalParams);
}
public ArrowFunctionExpression(
SourceLocation loc,
List params,
Node body,
Boolean generator,
Boolean async,
List typeParameters,
List parameterTypes,
ITypeExpression returnType,
IntList optionalParameterIndices) {
super(
"ArrowFunctionExpression",
loc,
null,
params,
body,
generator,
async,
typeParameters,
parameterTypes,
Collections.emptyList(),
returnType,
null,
optionalParameterIndices);
}
@Override
public A accept(Visitor v, Q q) {
return v.visit(this, q);
}
}