Julian Hyde created CALCITE-4087:
------------------------------------

             Summary: Hoist, a utility to replace literals in a SQL string with 
placeholders
                 Key: CALCITE-4087
                 URL: https://issues.apache.org/jira/browse/CALCITE-4087
             Project: Calcite
          Issue Type: New Feature
          Components: babel
    Affects Versions: 1.23.0
            Reporter: Julian Hyde


Add "Hoist", a utility to replace literals in a SQL string with placeholders.

By default it uses Calcite's parser, but you can configure to use different 
quoting, casing, and also to use a different parser such as Babel for other 
dialects of SQL.

It generates a data structure, {{Hoisted}}, that contains a map of where the 
literals occur within the SQL string. The Hoisted.substitute method generates 
an alternative SQL string, replacing the literals with a custom string.

It does not call {{SqlNode.unparse}}, and therefore does not lose any of the 
original formatting.

For more examples, see tests added to {{SqlParserTest}} and {{BabelParserTest}}.



--
This message was sent by Atlassian Jira
(v8.3.4#803005)

Reply via email to