if (!that.values.get(columnIndex).hasAnyValue()) {
return 1;
} else if (!this.values.get(columnIndex).hasAnyValue()) {
return -1;
} else {
ValueSource left = this.values.get(columnIndex);
ValueSource right = that.values.get(columnIndex);
TKeyComparable compare = registry.getKeyComparable(this.values.get(columnIndex).getType().typeClass(),
that.values.get(columnIndex).getType().typeClass());
if (compare != null) {
cmp = compare.getComparison().compare(left.getType(), left, right.getType(), right);
} else {
cmp = TClass.compare(left.getType(), left, right.getType(), right);
}
if (cmp != 0) {
return cmp;
}
}