diff --git a/jOOQ/src/main/java/org/jooq/impl/ParserImpl.java b/jOOQ/src/main/java/org/jooq/impl/ParserImpl.java index 23b6bc80bd..c6126c2ef1 100644 --- a/jOOQ/src/main/java/org/jooq/impl/ParserImpl.java +++ b/jOOQ/src/main/java/org/jooq/impl/ParserImpl.java @@ -7157,15 +7157,13 @@ final class DefaultParseContext extends AbstractScope implements ParseContext { } - else if (!ignoreProEdition() - && peekKeyword("FOR") - && !peekKeyword("FOR JSON") - && !peekKeyword("FOR KEY SHARE") - && !peekKeyword("FOR NO KEY UPDATE") - && !peekKeyword("FOR SHARE") - && !peekKeyword("FOR UPDATE") - && !peekKeyword("FOR XML") - && parseKeyword("FOR") && requireProEdition()) { + else if (!ignoreProEdition() && parseForPeriodIf() && requireProEdition()) { + + + + + + @@ -7331,6 +7329,17 @@ final class DefaultParseContext extends AbstractScope implements ParseContext { return t(result); } + private final boolean parseForPeriodIf() { + return peekKeyword("FOR") + && !peekKeyword("FOR JSON") + && !peekKeyword("FOR KEY SHARE") + && !peekKeyword("FOR NO KEY UPDATE") + && !peekKeyword("FOR SHARE") + && !peekKeyword("FOR UPDATE") + && !peekKeyword("FOR XML") + && parseKeyword("FOR"); + } + private final String[] parseParenthesisedIdentifiers() { return parseParenthesised(c -> map(parseIdentifiers(), Name::last, String[]::new)); }