%%%
%% Section 15.10: Array Creation Expressions
%%
%% @author Martin Bravenboer <martin.bravenboer@gmail.com>
%%%
module languages/java-15/expressions/ArrayCreation
imports
languages/java-15/expressions/Main
exports
sorts
ArrayCreationExpr
ArrayBaseType
Dim
DimExpr
context-free syntax
ArrayCreationExpr -> Expr
"new" ArrayBaseType DimExpr+ Dim* -> ArrayCreationExpr {cons("NewArray")}
"new" ArrayBaseType Dim+ ArrayInit -> ArrayCreationExpr {cons("NewArray")}
PrimType -> ArrayBaseType
TypeName -> ArrayBaseType
TypeName "<" "?" ">" -> ArrayBaseType {cons("UnboundWld")}
"[" Expr "]" -> DimExpr {cons("Dim")}
"[" "]" -> Dim {cons("Dim")}