From b69eea96ab63b43661061ec196f548b9aa59bd22 Mon Sep 17 00:00:00 2001 From: Lukas Eder Date: Fri, 30 Apr 2021 11:28:19 +0200 Subject: [PATCH] [jOOQ/jOOQ#11812] Support parsing ROW() projections --- jOOQ/src/main/java/org/jooq/impl/ParserImpl.java | 9 +++++++-- 1 file changed, 7 insertions(+), 2 deletions(-) diff --git a/jOOQ/src/main/java/org/jooq/impl/ParserImpl.java b/jOOQ/src/main/java/org/jooq/impl/ParserImpl.java index 7858591b02..f6e6c3abd0 100644 --- a/jOOQ/src/main/java/org/jooq/impl/ParserImpl.java +++ b/jOOQ/src/main/java/org/jooq/impl/ParserImpl.java @@ -265,6 +265,7 @@ import org.jooq.SQL; import org.jooq.SQLDialect; import org.jooq.Schema; import org.jooq.Select; +import org.jooq.SelectField; import org.jooq.SelectFieldOrAsterisk; import org.jooq.Sequence; import org.jooq.SortField; @@ -6602,7 +6603,7 @@ final class DefaultParseContext extends AbstractScope implements ParseContext { } else { Name alias = null; - Field field = null; + SelectField field = null; @@ -6618,7 +6619,7 @@ final class DefaultParseContext extends AbstractScope implements ParseContext { if (field == null) { - field = parseField(); + field = parseSelectField(); if (parseKeywordIf("AS")) alias = parseIdentifier(true); @@ -6672,6 +6673,10 @@ final class DefaultParseContext extends AbstractScope implements ParseContext { return parseField(null); } + private final SelectField parseSelectField() { + return (SelectField) parseFieldOrRow(); + } + private final FieldOrRow parseFieldOrRow() { return parseFieldOrRow(null); }