/** Creates a DynamicRecordTypeImpl. */ public DynamicRecordTypeImpl(RelDataTypeFactory typeFactory) { this.holder = new RelDataTypeHolder(typeFactory); computeDigest(); }
protected void generateTypeString(StringBuilder sb, boolean withDetail) { sb.append("(DynamicRecordRow").append(getFieldNames()).append(")"); }
public void onRegister(RelDataTypeFactory typeFactory) { rowType = new DynamicRecordTypeImpl(typeFactory); }
@Override public RelDataTypeFamily getFamily() { return getSqlTypeName().getFamily(); }
public void onRegister(RelDataTypeFactory typeFactory) { rowType = new DynamicRecordTypeImpl(typeFactory); }
@Override public RelDataTypeFamily getFamily() { return getSqlTypeName().getFamily(); }
/** Creates a dynamic struct type with the current contents of this * builder. */ public RelDataType buildDynamic() { final RelDataType dynamicType = new DynamicRecordTypeImpl(typeFactory); final RelDataType type = build(); dynamicType.getFieldList().addAll(type.getFieldList()); return dynamicType; }
@Override public RelDataTypeField getField(String fieldName, boolean caseSensitive, boolean elideRecord) { final Pair<RelDataTypeField, Boolean> pair = holder.getFieldOrInsert(fieldName, caseSensitive); // If a new field is added, we should re-compute the digest. if (pair.right) { computeDigest(); } return pair.left; }
protected void generateTypeString(StringBuilder sb, boolean withDetail) { sb.append("(DynamicRecordRow").append(getFieldNames()).append(")"); }
/** Creates a dynamic struct type with the current contents of this * builder. */ public RelDataType buildDynamic() { final RelDataType dynamicType = new DynamicRecordTypeImpl(typeFactory); final RelDataType type = build(); dynamicType.getFieldList().addAll(type.getFieldList()); return dynamicType; }
@Override public RelDataTypeField getField(String fieldName, boolean caseSensitive, boolean elideRecord) { final Pair<RelDataTypeField, Boolean> pair = holder.getFieldOrInsert(fieldName, caseSensitive); // If a new field is added, we should re-compute the digest. if (pair.right) { computeDigest(); } return pair.left; }
/** Creates a DynamicRecordTypeImpl. */ public DynamicRecordTypeImpl(RelDataTypeFactory typeFactory) { this.holder = new RelDataTypeHolder(typeFactory); computeDigest(); }