本文整理了Java中org.apache.calcite.rex.RexBuilder.makeNewInvocation
方法的一些代码示例,展示了RexBuilder.makeNewInvocation
的具体用法。这些代码示例主要来源于Github
/Stackoverflow
/Maven
等平台,是从一些精选项目中提取出来的代码,具有较强的参考意义,能在一定程度帮忙到你。RexBuilder.makeNewInvocation
方法的具体详情如下:
包路径:org.apache.calcite.rex.RexBuilder
类名称:RexBuilder
方法名:makeNewInvocation
[英]Creates an invocation of the NEW operator.
[中]创建对新运算符的调用。
代码示例来源:origin: org.apache.calcite/calcite-core
private static RexNode makeConstructorCall(
SqlRexContext cx,
SqlFunction constructor,
List<RexNode> exprs) {
final RexBuilder rexBuilder = cx.getRexBuilder();
RelDataType type = rexBuilder.deriveReturnType(constructor, exprs);
int n = type.getFieldCount();
ImmutableList.Builder<RexNode> initializationExprs =
ImmutableList.builder();
final InitializerContext initializerContext = new InitializerContext() {
public RexBuilder getRexBuilder() {
return rexBuilder;
}
public RexNode convertExpression(SqlNode e) {
throw new UnsupportedOperationException();
}
};
for (int i = 0; i < n; ++i) {
initializationExprs.add(
cx.getInitializerExpressionFactory().newAttributeInitializer(
type, constructor, i, exprs, initializerContext));
}
List<RexNode> defaultCasts =
RexUtil.generateCastExpressions(
rexBuilder,
type,
initializationExprs.build());
return rexBuilder.makeNewInvocation(type, defaultCasts);
}
代码示例来源:origin: Qihoo360/Quicksql
private static RexNode makeConstructorCall(
SqlRexContext cx,
SqlFunction constructor,
List<RexNode> exprs) {
final RexBuilder rexBuilder = cx.getRexBuilder();
RelDataType type = rexBuilder.deriveReturnType(constructor, exprs);
int n = type.getFieldCount();
ImmutableList.Builder<RexNode> initializationExprs =
ImmutableList.builder();
final InitializerContext initializerContext = new InitializerContext() {
public RexBuilder getRexBuilder() {
return rexBuilder;
}
public RexNode convertExpression(SqlNode e) {
throw new UnsupportedOperationException();
}
};
for (int i = 0; i < n; ++i) {
initializationExprs.add(
cx.getInitializerExpressionFactory().newAttributeInitializer(
type, constructor, i, exprs, initializerContext));
}
List<RexNode> defaultCasts =
RexUtil.generateCastExpressions(
rexBuilder,
type,
initializationExprs.build());
return rexBuilder.makeNewInvocation(type, defaultCasts);
}
代码示例来源:origin: org.apache.calcite/calcite-core
rexBuilder.makeNewInvocation(
structuredType,
inputExprs);
代码示例来源:origin: Qihoo360/Quicksql
rexBuilder.makeNewInvocation(
structuredType,
inputExprs);
内容来源于网络,如有侵权,请联系作者删除!