nashorn/src/jdk.scripting.nashorn/share/classes/jdk/nashorn/api/tree/FunctionDeclarationTreeImpl.java
--- a/nashorn/src/jdk.scripting.nashorn/share/classes/jdk/nashorn/api/tree/FunctionDeclarationTreeImpl.java Wed Jul 05 21:57:11 2017 +0200
+++ b/nashorn/src/jdk.scripting.nashorn/share/classes/jdk/nashorn/api/tree/FunctionDeclarationTreeImpl.java Tue Jul 12 21:18:13 2016 +0530
@@ -1,5 +1,5 @@
/*
- * Copyright (c) 2015, Oracle and/or its affiliates. All rights reserved.
+ * Copyright (c) 2016, Oracle and/or its affiliates. All rights reserved.
* DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
*
* This code is free software; you can redistribute it and/or modify it
@@ -32,7 +32,7 @@
final class FunctionDeclarationTreeImpl extends StatementTreeImpl
implements FunctionDeclarationTree {
private final FunctionNode funcNode;
- private final String funcName;
+ private final IdentifierTree funcName;
private final List<? extends ExpressionTree> params;
private final BlockTree body;
@@ -43,7 +43,7 @@
assert node.getInit() instanceof FunctionNode : "function expected";
funcNode = (FunctionNode)node.getInit();
assert funcNode.isDeclared() : "function declaration expected";
- funcName = funcNode.isAnonymous()? null : node.getName().getName();
+ funcName = funcNode.isAnonymous()? null : new IdentifierTreeImpl(node.getName());
this.params = params;
this.body = body;
}
@@ -54,7 +54,7 @@
}
@Override
- public String getName() {
+ public IdentifierTree getName() {
return funcName;
}
@@ -74,6 +74,11 @@
}
@Override
+ public boolean isGenerator() {
+ return funcNode.getKind() == FunctionNode.Kind.GENERATOR;
+ }
+
+ @Override
public <R,D> R accept(final TreeVisitor<R,D> visitor, final D data) {
return visitor.visitFunctionDeclaration(this, data);
}