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

Julian Hyde updated CALCITE-4183:
---------------------------------
    Description: 
The current FilterSetOpTransposeRule constructor simply takes a 
RelBuilderFactory.  Adding an additional constructor would allow more 
flexibility for user specific Filter and SetOp classes and follows behavior 
already allowed for several other rules.  

 For example:
{code}
/**
 * Creates a FilterSetOpTransposeRule that uses a generic
 * {@link Filter} and {@link SetOp}
 * @param filterClass filter class
 * @param setOpClass setOp class
 * @param relBuilderFactory builder factory for relational expressions
 */
public FilterSetOpTransposeRule(Class<? extends Filter> filterClass,
                                Class<? extends SetOp> setOpClass,
                                RelBuilderFactory relBuilderFactory) {
   super(
       operand(filterClass,
       operand(setOpClass, any())),
       relBuilderFactory, null);
}
{code}


  was:
The current FilterSetOpTransposeRule constructor simply takes a 
RelBuilderFactory.  Adding an additional constructor would allow more 
flexibility for user specific Filter and SetOp classes and follows behavior 
already allowed for several other rules.  

 For example:
/**
 * Creates a FilterSetOpTransposeRule that uses a generic
 * {@link Filter} and {@link SetOp}
 * @param filterClass filter class
 * @param setOpClass setOp class
 * @param relBuilderFactory builder factory for relational expressions
 */
public FilterSetOpTransposeRule(Class<? extends Filter> filterClass,
                                Class<? extends SetOp> setOpClass,
                                RelBuilderFactory relBuilderFactory) {
   super(
       operand(filterClass,
       operand(setOpClass, any())),
       relBuilderFactory, null);
}




> FilterSetOpTransposeRule constructor should allow for user defined Filter and 
> SetOp classes
> -------------------------------------------------------------------------------------------
>
>                 Key: CALCITE-4183
>                 URL: https://issues.apache.org/jira/browse/CALCITE-4183
>             Project: Calcite
>          Issue Type: Improvement
>          Components: core
>    Affects Versions: 1.24.0
>            Reporter: Sean Broeder
>            Priority: Major
>              Labels: pull-request-available
>   Original Estimate: 168h
>          Time Spent: 20m
>  Remaining Estimate: 167h 50m
>
> The current FilterSetOpTransposeRule constructor simply takes a 
> RelBuilderFactory.  Adding an additional constructor would allow more 
> flexibility for user specific Filter and SetOp classes and follows behavior 
> already allowed for several other rules.  
>  For example:
> {code}
> /**
>  * Creates a FilterSetOpTransposeRule that uses a generic
>  * {@link Filter} and {@link SetOp}
>  * @param filterClass filter class
>  * @param setOpClass setOp class
>  * @param relBuilderFactory builder factory for relational expressions
>  */
> public FilterSetOpTransposeRule(Class<? extends Filter> filterClass,
>                                 Class<? extends SetOp> setOpClass,
>                                 RelBuilderFactory relBuilderFactory) {
>    super(
>        operand(filterClass,
>        operand(setOpClass, any())),
>        relBuilderFactory, null);
> }
> {code}



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

Reply via email to