public RelDataType createStructType(Class type) { final List<RelDataTypeField> list = new ArrayList<>(); for (Field field : type.getFields()) { if (!Modifier.isStatic(field.getModifiers())) { // FIXME: watch out for recursion final Type fieldType = fieldType(field); list.add( new RelDataTypeFieldImpl( field.getName(), list.size(), createType(fieldType))); } } return canonize(new JavaRecordType(list, type)); }
public RelDataType createStructType(Class type) { final List<RelDataTypeField> list = new ArrayList<>(); for (Field field : type.getFields()) { if (!Modifier.isStatic(field.getModifiers())) { // FIXME: watch out for recursion final Type fieldType = fieldType(field); list.add( new RelDataTypeFieldImpl( field.getName(), list.size(), createType(fieldType))); } } return canonize(new JavaRecordType(list, type)); }