Example #1
0
 /**
  * Applies a mapping to a field collation.
  *
  * <p>If the field is not mapped, returns null.
  *
  * @param mapping Mapping
  * @param fieldCollation Field collation
  * @return collation with mapping applied
  */
 public static RelFieldCollation apply(
     Mappings.TargetMapping mapping, RelFieldCollation fieldCollation) {
   final int target = mapping.getTargetOpt(fieldCollation.getFieldIndex());
   if (target < 0) {
     return null;
   }
   return fieldCollation.copy(target);
 }
 @Override
 public RexNode visitInputRef(RexInputRef local) {
   final int index = local.getIndex();
   int target = mapping.getTarget(index);
   return new RexInputRef(target, local.getType());
 }