fhueske commented on a change in pull request #6622: [FLINK-10222] [table] Table scalar function expression parses error when function name equals the exists keyword suffix URL: https://github.com/apache/flink/pull/6622#discussion_r217554963
########## File path: flink-libraries/flink-table/src/main/scala/org/apache/flink/table/expressions/ExpressionParser.scala ########## @@ -45,6 +45,13 @@ object ExpressionParser extends JavaTokenParsers with PackratParsers { ("""(?i)\Q""" + kw.key + """\E""").r } + // Convert the keyword into an case insensitive Parser + // It uses an exact matching mode. scenes to be used: + // a keyword as a suffix no required parameter and not as a prefix + def keyword2ParserForSuffixButNotAsPrefix(kw: Keyword): Parser[String] = { Review comment: Yes, I agree with @walterddr. This seems to be a better approach. A keyword should only match if it is not followed by another identifier (see [Java identifier specs](https://docs.oracle.com/javase/specs/jls/se7/html/jls-3.html#jls-3.8)) character. What do you think @yanghua? ---------------------------------------------------------------- This is an automated message from the Apache Git Service. To respond to the message, please log on GitHub and use the URL above to go to the specific comment. For queries about this service, please contact Infrastructure at: us...@infra.apache.org With regards, Apache Git Services