/** Creates a {@link RelBuilderFactory} that uses a given set of factories. */ public static RelBuilderFactory proto(Object... factories) { return proto(Contexts.of(factories)); }
/** Creates a {@link RelBuilderFactory} that uses a given set of factories. */ public static RelBuilderFactory proto(Object... factories) { return proto(Contexts.of(factories)); }
/** Returns a context that contains a * {@link org.apache.calcite.config.CalciteConnectionConfig}. * * @deprecated Use {@link #of} */ @Deprecated // to be removed before 2.0 public static Context withConfig(CalciteConnectionConfig config) { return of(config); }
@Deprecated // to be removed before 2.0 public JoinProjectTransposeRule(RelOptRuleOperand operand, String description, ProjectFactory projectFactory) { this(operand, description, false, RelBuilder.proto(Contexts.of(projectFactory))); }
/** Returns a context that wraps an array of objects, ignoring any nulls. */ public static Context of(Object... os) { final List<Context> contexts = new ArrayList<>(); for (Object o : os) { if (o != null) { contexts.add(of(o)); } } return chain(contexts); }
@Deprecated // to be removed before 2.0 public JoinPushTransitivePredicatesRule(Class<? extends Join> clazz, RelFactories.FilterFactory filterFactory) { this(clazz, RelBuilder.proto(Contexts.of(filterFactory))); }
@Deprecated // to be removed before 2.0 public JoinCommuteRule(Class<? extends Join> clazz, ProjectFactory projectFactory, boolean swapOuter) { this(clazz, RelBuilder.proto(Contexts.of(projectFactory)), swapOuter); }
@Deprecated // to be removed before 2.0 public FilterMergeRule(RelFactories.FilterFactory filterFactory) { this(RelBuilder.proto(Contexts.of(filterFactory))); }
@Deprecated // to be removed before 2.0 public FlinkAggregateExpandDistinctAggregatesRule( Class<? extends LogicalAggregate> clazz, RelFactories.JoinFactory joinFactory) { this(clazz, false, RelBuilder.proto(Contexts.of(joinFactory))); }
/** Creates a {@link RelBuilderFactory} that uses a given set of factories. */ public static RelBuilderFactory proto(Object... factories) { return proto(Contexts.of(factories)); } }
@Deprecated // to be removed before 2.0 public AggregateExpandDistinctAggregatesRule( Class<? extends LogicalAggregate> clazz, boolean useGroupingSets, RelFactories.JoinFactory joinFactory) { this(clazz, useGroupingSets, RelBuilder.proto(Contexts.of(joinFactory))); }
@Deprecated // to be removed before 2.0 public FilterAggregateTransposeRule( Class<? extends Filter> filterClass, RelFactories.FilterFactory filterFactory, Class<? extends Aggregate> aggregateClass) { this(filterClass, RelBuilder.proto(Contexts.of(filterFactory)), aggregateClass); }
@Deprecated // to be removed before 2.0 public JoinProjectTransposeRule(RelOptRuleOperand operand, String description, boolean includeOuter, ProjectFactory projectFactory) { this(operand, description, includeOuter, RelBuilder.proto(Contexts.of(projectFactory))); }
@Deprecated // to be removed before 2.0 public JoinProjectTransposeRule(RelOptRuleOperand operand, String description, ProjectFactory projectFactory) { this(operand, description, false, RelBuilder.proto(Contexts.of(projectFactory))); }
@Deprecated // to be removed before 2.0 public JoinCommuteRule(Class<? extends Join> clazz, ProjectFactory projectFactory) { this(clazz, RelBuilder.proto(Contexts.of(projectFactory)), false); }
@Deprecated // to be removed before 2.0 public AggregateExpandDistinctAggregatesRule( Class<? extends LogicalAggregate> clazz, boolean useGroupingSets, RelFactories.JoinFactory joinFactory) { this(clazz, useGroupingSets, RelBuilder.proto(Contexts.of(joinFactory))); }
@Deprecated // to be removed before 2.0 public FilterAggregateTransposeRule( Class<? extends Filter> filterClass, RelFactories.FilterFactory filterFactory, Class<? extends Aggregate> aggregateClass) { this(filterClass, RelBuilder.proto(Contexts.of(filterFactory)), aggregateClass); }
@Deprecated // to be removed before 2.0 public JoinCommuteRule(Class<? extends Join> clazz, ProjectFactory projectFactory, boolean swapOuter) { this(clazz, RelBuilder.proto(Contexts.of(projectFactory)), swapOuter); }
/** Creates a {@link RelBuilderFactory} that uses a given set of factories. */ public static RelBuilderFactory proto(Object... factories) { return proto(Contexts.of(factories)); }
@Test public void testExtractYearMonthToRange() { final String sql = "select *\n" + "from sales.emp_b as e\n" + "where extract(year from birthdate) = 2014" + "and extract(month from birthdate) = 4"; HepProgram program = new HepProgramBuilder() .addRuleInstance(DateRangeRules.FILTER_INSTANCE) .build(); final Context context = Contexts.of(new CalciteConnectionConfigImpl(new Properties())); sql(sql).with(program).withContext(context).check(); }