当前位置: 首页>>代码示例>>Java>>正文


Java Primitive.ofBox方法代码示例

本文整理汇总了Java中org.apache.calcite.linq4j.tree.Primitive.ofBox方法的典型用法代码示例。如果您正苦于以下问题:Java Primitive.ofBox方法的具体用法?Java Primitive.ofBox怎么用?Java Primitive.ofBox使用的例子?那么恭喜您, 这里精选的方法代码示例或许可以为您提供帮助。您也可以进一步了解该方法所在org.apache.calcite.linq4j.tree.Primitive的用法示例。


在下文中一共展示了Primitive.ofBox方法的4个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的Java代码示例。

示例1: convert

import org.apache.calcite.linq4j.tree.Primitive; //导入方法依赖的package包/类
private static Object convert(Object o, Class clazz) {
  if (o == null) {
    return null;
  }
  Primitive primitive = Primitive.of(clazz);
  if (primitive != null) {
    clazz = primitive.boxClass;
  } else {
    primitive = Primitive.ofBox(clazz);
  }
  if (clazz.isInstance(o)) {
    return o;
  }
  if (o instanceof Date && primitive != null) {
    o = ((Date) o).getTime() / DateTimeUtils.MILLIS_PER_DAY;
  }
  if (o instanceof Number && primitive != null) {
    return primitive.number((Number) o);
  }
  return o;
}
 
开发者ID:apache,项目名称:calcite,代码行数:22,代码来源:Elasticsearch2Enumerator.java

示例2: chooseRep

import org.apache.calcite.linq4j.tree.Primitive; //导入方法依赖的package包/类
ArrayTable.Representation chooseRep(int ordinal) {
  Primitive primitive = Primitive.of(clazz);
  Primitive boxPrimitive = Primitive.ofBox(clazz);
  Primitive p = primitive != null ? primitive : boxPrimitive;
  if (!containsNull && p != null) {
    switch (p) {
    case FLOAT:
    case DOUBLE:
      return new ArrayTable.PrimitiveArray(ordinal, p, p);
    case OTHER:
    case VOID:
      throw new AssertionError("wtf?!");
    }
    if (canBeLong(min) && canBeLong(max)) {
      return chooseFixedRep(
          ordinal, p, toLong(min), toLong(max));
    }
  }

  // We don't want to use a dictionary if:
  // (a) there are so many values that an object pointer (with one
  //     indirection) has about as many bits as a code (with two
  //     indirections); or
  // (b) if there are very few copies of each value.
  // The condition kind of captures this, but needs to be tuned.
  final int codeCount = map.size() + (containsNull ? 1 : 0);
  final int codeBitCount = log2(nextPowerOf2(codeCount));
  if (codeBitCount < 10 && values.size() > 2000) {
    final ArrayTable.Representation representation =
        chooseFixedRep(-1, Primitive.INT, 0, codeCount - 1);
    return new ArrayTable.ObjectDictionary(ordinal, representation);
  }
  return new ArrayTable.ObjectArray(ordinal);
}
 
开发者ID:apache,项目名称:calcite,代码行数:35,代码来源:ColumnLoader.java

示例3: javaPrimitive

import org.apache.calcite.linq4j.tree.Primitive; //导入方法依赖的package包/类
private Primitive javaPrimitive(RelDataType type) {
  if (type instanceof RelDataTypeFactoryImpl.JavaType) {
    return Primitive.ofBox(
        ((RelDataTypeFactoryImpl.JavaType) type).getJavaClass());
  }
  return null;
}
 
开发者ID:apache,项目名称:calcite,代码行数:8,代码来源:RexToLixTranslator.java

示例4: isA

import org.apache.calcite.linq4j.tree.Primitive; //导入方法依赖的package包/类
static boolean isA(Type fromType, Primitive primitive) {
  return Primitive.of(fromType) == primitive
      || Primitive.ofBox(fromType) == primitive;
}
 
开发者ID:apache,项目名称:calcite,代码行数:5,代码来源:RexToLixTranslator.java


注:本文中的org.apache.calcite.linq4j.tree.Primitive.ofBox方法示例由纯净天空整理自Github/MSDocs等开源代码及文档管理平台,相关代码片段筛选自各路编程大神贡献的开源项目,源码版权归原作者所有,传播和使用请参考对应项目的License;未经允许,请勿转载。