Changing ArrayConstructor
Project: http://git-wip-us.apache.org/repos/asf/vxquery/repo Commit: http://git-wip-us.apache.org/repos/asf/vxquery/commit/beff6de5 Tree: http://git-wip-us.apache.org/repos/asf/vxquery/tree/beff6de5 Diff: http://git-wip-us.apache.org/repos/asf/vxquery/diff/beff6de5 Branch: refs/heads/master Commit: beff6de50d0374b337ef38bf48989f53d985f7f5 Parents: 6c7dd29 Author: Christina Pavlopoulou <[email protected]> Authored: Mon May 30 21:35:55 2016 -0700 Committer: Christina Pavlopoulou <[email protected]> Committed: Mon May 30 21:35:55 2016 -0700 ---------------------------------------------------------------------- .../xmlquery/ast/ArrayConstructorNode.java | 27 ------------------- vxquery-core/src/main/javacc/xquery-grammar.jj | 28 +++----------------- 2 files changed, 4 insertions(+), 51 deletions(-) ---------------------------------------------------------------------- http://git-wip-us.apache.org/repos/asf/vxquery/blob/beff6de5/vxquery-core/src/main/java/org/apache/vxquery/xmlquery/ast/ArrayConstructorNode.java ---------------------------------------------------------------------- diff --git a/vxquery-core/src/main/java/org/apache/vxquery/xmlquery/ast/ArrayConstructorNode.java b/vxquery-core/src/main/java/org/apache/vxquery/xmlquery/ast/ArrayConstructorNode.java deleted file mode 100644 index 235f2c9..0000000 --- a/vxquery-core/src/main/java/org/apache/vxquery/xmlquery/ast/ArrayConstructorNode.java +++ /dev/null @@ -1,27 +0,0 @@ -package org.apache.vxquery.xmlquery.ast; - -import java.util.List; - -import org.apache.vxquery.util.SourceLocation; - -public class ArrayConstructorNode extends ASTNode { - private List<ASTNode> items; - - public ArrayConstructorNode(SourceLocation loc) { - super(loc); - } - - @Override - public ASTTag getTag() { - return ASTTag.ARRAY_CONSTRUCTOR; - } - - public List<ASTNode> getItems() { - return items; - } - - public void setItems(List<ASTNode> items) { - this.items = items; - } - -} http://git-wip-us.apache.org/repos/asf/vxquery/blob/beff6de5/vxquery-core/src/main/javacc/xquery-grammar.jj ---------------------------------------------------------------------- diff --git a/vxquery-core/src/main/javacc/xquery-grammar.jj b/vxquery-core/src/main/javacc/xquery-grammar.jj index 91c9904..4db964a 100644 --- a/vxquery-core/src/main/javacc/xquery-grammar.jj +++ b/vxquery-core/src/main/javacc/xquery-grammar.jj @@ -1796,7 +1796,6 @@ ASTNode PrimaryExpr(): | LOOKAHEAD(2) expr = OrderedExpr() | LOOKAHEAD(2) expr = UnorderedExpr() | expr = Constructor() - | expr = JsonConstructor() ) { return expr; } @@ -1951,34 +1950,14 @@ ASTNode JsonConstructor() : ASTNode ArrayConstructor() : { - Token start, end; - List<ASTNode> items; + ASTNode expr; } { - start="[" items=ArrayItemList() end="]" { - ArrayConstructorNode array = new ArrayConstructorNode(createSourceLocation(start)); - array.setItems(items); - return array; + "[" expr=Expr() "]" { + return expr; } } -List<ASTNode> ArrayItemList() : -{ - List<ASTNode> items = new ArrayList<ASTNode>(); - ASTNode arraynode; -} -{[ - arraynode = Literal() { - items.add(arraynode); - } ( - "," arraynode = Literal() { - items.add(arraynode); - } - )* ]{ - return items; - } -} - ASTNode Constructor() : { ASTNode result; @@ -1987,6 +1966,7 @@ ASTNode Constructor() : ( result = DirectConstructor() | result = ComputedConstructor() + | result = JsonConstructor() ) { return result; }
