code: Rule ArrayCreatorRest() {
          return Sequence(
                  LBRK,
                  FirstOf(
                          Sequence(RBRK, ZeroOrMore(Dim()), ArrayInitializer()),
                          Sequence(Expression(), RBRK, ZeroOrMore(DimExpr()), ZeroOrMore(Dim()))
                  )
          );
      }
docs: BasicType must be followed by at least one DimExpr or by ArrayInitializer.