org.apache.calcite.rex.RexBuilder.<init>()方法的使用及代码示例

x33g5p2x  于2022-01-29 转载在 其他  
字(10.6k)|赞(0)|评价(0)|浏览(112)

本文整理了Java中org.apache.calcite.rex.RexBuilder.<init>方法的一些代码示例,展示了RexBuilder.<init>的具体用法。这些代码示例主要来源于Github/Stackoverflow/Maven等平台,是从一些精选项目中提取出来的代码,具有较强的参考意义,能在一定程度帮忙到你。RexBuilder.<init>方法的具体详情如下:
包路径:org.apache.calcite.rex.RexBuilder
类名称:RexBuilder
方法名:<init>

RexBuilder.<init>介绍

[英]Creates a RexBuilder.
[中]创建一个RexBuilder。

代码示例

代码示例来源:origin: apache/flink

public RexBuilder getRexBuilder() {
  return new RexBuilder(typeFactory);
}

代码示例来源:origin: apache/storm

public AbstractStreamsProcessor compile(Map<String, ISqlStreamsDataSource> sources, String query) throws Exception {
  StreamsRel relNode = getPlan(query);
  StreamsPlanCreator streamsPlanCreator = new StreamsPlanCreator(sources, new RexBuilder(typeFactory));
  relNode.streamsPlan(streamsPlanCreator);
  final StreamBuilder streamBuilder = streamsPlanCreator.getStreamBuilder();
  final Stream<Values> lastStream = streamsPlanCreator.pop();
  final DataContext dc = streamsPlanCreator.getDataContext();
  final List<CompilingClassLoader> cls = streamsPlanCreator.getClassLoaders();
  return new AbstractStreamsProcessor() {
    @Override
    public StormTopology build() {
      return streamBuilder.build();
    }
    @Override
    public Stream<Values> outputStream() {
      return lastStream;
    }
    @Override
    public DataContext getDataContext() {
      return dc;
    }
    @Override
    public List<CompilingClassLoader> getClassLoaders() {
      return cls;
    }
  };
}

代码示例来源:origin: apache/hive

private static RelNode createMaterializedViewScan(HiveConf conf, Table viewTable) {
 final RexBuilder rexBuilder = new RexBuilder(
   new JavaTypeFactoryImpl(
     new HiveTypeSystemImpl()));

代码示例来源:origin: apache/hive

@Before
public void before() {
 HepProgramBuilder programBuilder = new HepProgramBuilder();
 programBuilder.addRuleInstance(HiveReduceExpressionsWithStatsRule.INSTANCE);
 planner = new HepPlanner(programBuilder.build());
 JavaTypeFactoryImpl typeFactory = new JavaTypeFactoryImpl();
 RexBuilder rexBuilder = new RexBuilder(typeFactory);
 final RelOptCluster optCluster = RelOptCluster.create(planner, rexBuilder);
 RelDataType rowTypeMock = typeFactory.createStructType(MyRecord.class);
 Mockito.doReturn(rowTypeMock).when(tableMock).getRowType();
 Mockito.doReturn(tableMock).when(schemaMock).getTableForMember(Matchers.any());
 statObj = new ColStatistics("_int", "int");
 Mockito.doReturn(Lists.newArrayList(statObj)).when(tableMock).getColStat(Matchers.anyListOf(Integer.class), Matchers.eq(false));
 Mockito.doReturn(hiveTableMDMock).when(tableMock).getHiveTableMD();
 Mockito.doReturn(tableParams).when(hiveTableMDMock).getParameters();
 builder = HiveRelFactories.HIVE_BUILDER.create(optCluster, schemaMock);
 StatsSetupConst.setStatsStateForCreateTable(tableParams, Lists.newArrayList("_int"), StatsSetupConst.TRUE);
 tableParams.put(StatsSetupConst.ROW_COUNT, "3");
}

代码示例来源:origin: apache/hive

@Before
public void before() {
 HepProgramBuilder programBuilder = new HepProgramBuilder();
 programBuilder.addRuleInstance(new HivePointLookupOptimizerRule.FilterCondition(2));
 planner = new HepPlanner(programBuilder.build());
 JavaTypeFactoryImpl typeFactory = new JavaTypeFactoryImpl();
 RexBuilder rexBuilder = new RexBuilder(typeFactory);
 final RelOptCluster optCluster = RelOptCluster.create(planner, rexBuilder);
 RelDataType rowTypeMock = typeFactory.createStructType(MyRecord.class);
 Mockito.doReturn(rowTypeMock).when(tableMock).getRowType();
 Mockito.doReturn(tableMock).when(schemaMock).getTableForMember(Matchers.any());
 Mockito.doReturn(hiveTableMDMock).when(tableMock).getHiveTableMD();
 builder = HiveRelFactories.HIVE_BUILDER.create(optCluster, schemaMock);
}

代码示例来源:origin: apache/drill

private static RelNode createTableScan(Table viewTable) {
 final RexBuilder rexBuilder = new RexBuilder(new JavaTypeFactoryImpl());
 final RelOptCluster cluster = RelOptCluster.create(planner, rexBuilder);

代码示例来源:origin: apache/hive

RexBuilder rexBuilder = new RexBuilder(new JavaTypeFactoryImpl());
RelOptCluster cluster = RelOptCluster.create(planner, rexBuilder);

代码示例来源:origin: apache/hive

@Test
public void testCBOMaxNumToCNF1() {
 // OR(=($0, 1), AND(=($0, 0), =($1, 8)))
 // transformation creates 7 nodes AND(OR(=($0, 1), =($0, 0)), OR(=($0, 1), =($1, 8)))
 // thus, it is triggered
 final RelDataTypeFactory typeFactory = new JavaTypeFactoryImpl();
 final RexBuilder rexBuilder = new RexBuilder(typeFactory);
 final RexNode cond = rexBuilder.makeCall(SqlStdOperatorTable.OR,
     rexBuilder.makeCall(SqlStdOperatorTable.EQUALS,
         rexBuilder.makeInputRef(typeFactory.createSqlType(SqlTypeName.INTEGER), 0),
         rexBuilder.makeLiteral(1, typeFactory.createSqlType(SqlTypeName.INTEGER), false)),
     rexBuilder.makeCall(SqlStdOperatorTable.AND,
         rexBuilder.makeCall(SqlStdOperatorTable.EQUALS,
             rexBuilder.makeInputRef(typeFactory.createSqlType(SqlTypeName.INTEGER), 0),
             rexBuilder.makeLiteral(0, typeFactory.createSqlType(SqlTypeName.INTEGER), false)),
         rexBuilder.makeCall(SqlStdOperatorTable.EQUALS,
             rexBuilder.makeInputRef(typeFactory.createSqlType(SqlTypeName.INTEGER), 1),
             rexBuilder.makeLiteral(8, typeFactory.createSqlType(SqlTypeName.INTEGER), false))));
 final RexNode newCond = RexUtil.toCnf(rexBuilder, maxNumNodesCNF, cond);
 assertEquals(newCond.toString(), "AND(OR(=($0, 1), =($0, 0)), OR(=($0, 1), =($1, 8)))");
}

代码示例来源:origin: apache/hive

@Test
public void testCBOMaxNumToCNF2() {
 // OR(=($0, 1), =($0, 2), AND(=($0, 0), =($1, 8)))
 // transformation creates 9 nodes AND(OR(=($0, 1), =($0, 2), =($0, 0)), OR(=($0, 1), =($0, 2), =($1, 8)))
 // thus, it is NOT triggered
 final RelDataTypeFactory typeFactory = new JavaTypeFactoryImpl();
 final RexBuilder rexBuilder = new RexBuilder(typeFactory);
 final RexNode cond = rexBuilder.makeCall(SqlStdOperatorTable.OR,
     rexBuilder.makeCall(SqlStdOperatorTable.EQUALS,
         rexBuilder.makeInputRef(typeFactory.createSqlType(SqlTypeName.INTEGER), 0),
         rexBuilder.makeLiteral(1, typeFactory.createSqlType(SqlTypeName.INTEGER), false)),
     rexBuilder.makeCall(SqlStdOperatorTable.EQUALS,
         rexBuilder.makeInputRef(typeFactory.createSqlType(SqlTypeName.INTEGER), 0),
         rexBuilder.makeLiteral(2, typeFactory.createSqlType(SqlTypeName.INTEGER), false)),
     rexBuilder.makeCall(SqlStdOperatorTable.AND,
         rexBuilder.makeCall(SqlStdOperatorTable.EQUALS,
             rexBuilder.makeInputRef(typeFactory.createSqlType(SqlTypeName.INTEGER), 0),
             rexBuilder.makeLiteral(0, typeFactory.createSqlType(SqlTypeName.INTEGER), false)),
         rexBuilder.makeCall(SqlStdOperatorTable.EQUALS,
             rexBuilder.makeInputRef(typeFactory.createSqlType(SqlTypeName.INTEGER), 1),
             rexBuilder.makeLiteral(8, typeFactory.createSqlType(SqlTypeName.INTEGER), false))));
 final RexNode newCond = RexUtil.toCnf(rexBuilder, maxNumNodesCNF, cond);
 assertEquals(newCond.toString(), "OR(=($0, 1), =($0, 2), AND(=($0, 0), =($1, 8)))");
}

代码示例来源:origin: hortonworks/streamline

public RelNodeCompiler(PrintWriter pw, JavaTypeFactory typeFactory) {
 this.pw = pw;
 this.typeFactory = typeFactory;
 this.rexCompiler = new RexNodeToJavaCodeCompiler(new RexBuilder(typeFactory));
}

代码示例来源:origin: org.apache.calcite/calcite-core

/** Creates a translator for translating aggregate functions. */
public static RexToLixTranslator forAggregation(JavaTypeFactory typeFactory,
  BlockBuilder list, InputGetter inputGetter, SqlConformance conformance) {
 final ParameterExpression root = DataContext.ROOT;
 return new RexToLixTranslator(null, typeFactory, root, inputGetter, list,
   Collections.emptyMap(), new RexBuilder(typeFactory), conformance, null,
   null);
}

代码示例来源:origin: Qihoo360/Quicksql

/** Creates a translator for translating aggregate functions. */
public static RexToLixTranslator forAggregation(JavaTypeFactory typeFactory,
  BlockBuilder list, InputGetter inputGetter, SqlConformance conformance) {
 final ParameterExpression root = DataContext.ROOT;
 return new RexToLixTranslator(null, typeFactory, root, inputGetter, list,
   Collections.emptyMap(), new RexBuilder(typeFactory), conformance, null,
   null);
}

代码示例来源:origin: org.apache.calcite/calcite-core

static RelOptCluster newCluster(VolcanoPlanner planner) {
 final RelDataTypeFactory typeFactory =
   new SqlTypeFactoryImpl(org.apache.calcite.rel.type.RelDataTypeSystem.DEFAULT);
 return RelOptCluster.create(planner, new RexBuilder(typeFactory));
}

代码示例来源:origin: Qihoo360/Quicksql

static RelOptCluster newCluster(VolcanoPlanner planner) {
 final RelDataTypeFactory typeFactory =
   new SqlTypeFactoryImpl(org.apache.calcite.rel.type.RelDataTypeSystem.DEFAULT);
 return RelOptCluster.create(planner, new RexBuilder(typeFactory));
}

代码示例来源:origin: Qihoo360/Quicksql

@Before
public void setUp() {
 JavaTypeFactory typeFactory = new JavaTypeFactoryImpl(RelDataTypeSystem.DEFAULT);
 integerDataType = typeFactory.createSqlType(SqlTypeName.INTEGER);
 integerType = SqlTypeUtil.convertTypeToSpec(integerDataType);
 rexBuilder = new RexBuilder(typeFactory);
}

代码示例来源:origin: Qihoo360/Quicksql

/** Test case for
 * <a href="https://issues.apache.org/jira/browse/CALCITE-2306">[CALCITE-2306]
 * AssertionError in {@link RexLiteral#getValue3} with null literal of type
 * DECIMAL</a>. */
@Test public void testDecimalLiteral() {
 final RelDataTypeFactory typeFactory =
   new SqlTypeFactoryImpl(RelDataTypeSystem.DEFAULT);
 final RelDataType type = typeFactory.createSqlType(SqlTypeName.DECIMAL);
 final RexBuilder builder = new RexBuilder(typeFactory);
 final RexLiteral literal = builder.makeExactLiteral(null, type);
 assertThat(literal.getValue3(), nullValue());
}

代码示例来源:origin: org.apache.calcite/calcite-core

/** Test case for
 * <a href="https://issues.apache.org/jira/browse/CALCITE-2306">[CALCITE-2306]
 * AssertionError in {@link RexLiteral#getValue3} with null literal of type
 * DECIMAL</a>. */
@Test public void testDecimalLiteral() {
 final RelDataTypeFactory typeFactory =
   new SqlTypeFactoryImpl(RelDataTypeSystem.DEFAULT);
 final RelDataType type = typeFactory.createSqlType(SqlTypeName.DECIMAL);
 final RexBuilder builder = new RexBuilder(typeFactory);
 final RexLiteral literal = builder.makeExactLiteral(null, type);
 assertThat(literal.getValue3(), nullValue());
}

代码示例来源:origin: dremio/dremio-oss

private void checkCancelFlag(RelOptPlanner planner) {
 expectedException.expect(UserException.class);
 RelOptCluster cluster = RelOptCluster.create(planner, new RexBuilder(SqlTypeFactoryImpl.INSTANCE));
 RelNode root = new NoneRel(cluster);
 planner.setRoot(root);
 planner.findBestExp();
}

代码示例来源:origin: Qihoo360/Quicksql

/**
 * Test RexBuilder.ensureType()
 */
@Test
public void testEnsureTypeWithItself() {
 final RelDataTypeFactory typeFactory = new SqlTypeFactoryImpl(RelDataTypeSystem.DEFAULT);
 RexBuilder builder = new RexBuilder(typeFactory);
 RexNode node =  new RexLiteral(
     Boolean.TRUE, typeFactory.createSqlType(SqlTypeName.BOOLEAN), SqlTypeName.BOOLEAN);
 RexNode ensuredNode = builder.ensureType(
     typeFactory.createSqlType(SqlTypeName.BOOLEAN), node, true);
 assertEquals(node, ensuredNode);
}

代码示例来源:origin: org.apache.calcite/calcite-core

/**
 * Test RexBuilder.ensureType()
 */
@Test
public void testEnsureTypeWithAny() {
 final RelDataTypeFactory typeFactory = new SqlTypeFactoryImpl(RelDataTypeSystem.DEFAULT);
 RexBuilder builder = new RexBuilder(typeFactory);
 RexNode node =  new RexLiteral(
     Boolean.TRUE, typeFactory.createSqlType(SqlTypeName.BOOLEAN), SqlTypeName.BOOLEAN);
 RexNode ensuredNode = builder.ensureType(
     typeFactory.createSqlType(SqlTypeName.ANY), node, true);
 assertEquals(node, ensuredNode);
}

相关文章

微信公众号

最新文章

更多