tClass = typesList.next();
} while (!TypeValidator.isSupportedForColumn(tClass));
boolean indexable = TypeValidator.isSupportedForIndex(tClass);
TInstance type = tClass.instance(true);
PostgresType pgType = PostgresType.fromTInstance(type);
String bundle = tClass.name().bundleId().name();
String category = tClass.name().categoryName();
String name = tClass.name().unqualifiedName();
String attribute1 = null;
String attribute2 = null;
String attribute3 = null;
Iterator<? extends Attribute> attrs = tClass.attributes().iterator();
if (attrs.hasNext()) {
attribute1 = attrs.next().name();
}
if (attrs.hasNext()) {
attribute2 = attrs.next().name();
}
if (attrs.hasNext()) {
attribute3 = attrs.next().name();
}
Long size = tClass.hasFixedSerializationSize() ? (long)tClass.fixedSerializationSize() : null;
Integer jdbcTypeID = tClass.jdbcType();
return new ValuesRow (rowType,
name,
category,
bundle,
attribute1,
attribute2,
attribute3,
size,
(long)pgType.getOid(),
(long)jdbcTypeID,
boolResult(indexable),
++rowCounter);
}