You are viewing a plain text version of this content. The canonical link for it is here.
Posted to derby-dev@db.apache.org by "Rick Hillegas (JIRA)" <ji...@apache.org> on 2009/10/19 21:48:59 UTC

[jira] Updated: (DERBY-4415) Make it easy to plug custom AST printers into the compiler

     [ https://issues.apache.org/jira/browse/DERBY-4415?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ]

Rick Hillegas updated DERBY-4415:
---------------------------------

    Attachment: derby-4415-01-aa-customASTprinters.diff

Attaching derby-4415-01-aa-customASTprinters. This makes it possible to plug custom AST printers into the compiler. I am running regression tests now.

Touches the following files:

M      java/engine/org/apache/derby/iapi/sql/conn/LanguageConnectionContext.java
M      java/engine/org/apache/derby/impl/sql/conn/GenericLanguageConnectionContext.java

Add accessor methods for storing a custom AST printer in the session's compiler state.


M      java/engine/org/apache/derby/iapi/sql/compile/Visitor.java

Add methods to mark the beginning and end of a printing session.


M      java/engine/org/apache/derby/impl/sql/GenericStatement.java

If the custom AST printer is set, then use it after each transformation of the AST: 1) after parsing, 2) after binding, and 3) after optimization.


M      java/engine/org/apache/derby/impl/sql/compile/HasVariantValueNodeVisitor.java
M      java/engine/org/apache/derby/impl/sql/compile/VerifyAggregateExpressionsVisitor.java
M      java/engine/org/apache/derby/impl/sql/compile/ReplaceAggregatesWithCRVisitor.java
M      java/engine/org/apache/derby/impl/sql/compile/HasCorrelatedCRsVisitor.java
M      java/engine/org/apache/derby/impl/sql/compile/VTIDeferModPolicy.java
M      java/engine/org/apache/derby/impl/sql/compile/CollectNodesVisitor.java
M      java/engine/org/apache/derby/impl/sql/compile/SubstituteExpressionVisitor.java
M      java/engine/org/apache/derby/impl/sql/compile/HasNodeVisitor.java
M      java/engine/org/apache/derby/impl/sql/compile/BaseTableNumbersVisitor.java
M      java/engine/org/apache/derby/impl/sql/compile/ReferencedTablesVisitor.java
M      java/engine/org/apache/derby/impl/sql/compile/RemapCRsVisitor.java

Add vacuous implementations of the new begin() and end() brackets to our existing Visitors.


> Make it easy to plug custom AST printers into the compiler
> ----------------------------------------------------------
>
>                 Key: DERBY-4415
>                 URL: https://issues.apache.org/jira/browse/DERBY-4415
>             Project: Derby
>          Issue Type: Improvement
>          Components: SQL
>            Reporter: Rick Hillegas
>            Priority: Minor
>         Attachments: derby-4415-01-aa-customASTprinters.diff
>
>
> It would be nice to be able to tell the compiler to use user-written formatters for pretty-printing Derby's abstract syntax trees. For instance, it would be nice to be able to plug in the AST printers attached to DERBY-791, including the Eclipse-based tree grapher written by Kay Röpke.

-- 
This message is automatically generated by JIRA.
-
You can reply to this email to add a comment to the issue online.