public SmartBinder filterReturn(MethodHandle filter) {
        return new SmartBinder(this, signature().changeReturn(filter.type().returnType()), binder.filterReturn(filter));
    }
public SmartBinder filterReturn ( MethodHandle filter ) { return new SmartBinder ( this , signature ( ) . changeReturn ( filter . type ( ) . returnType ( ) ) , binder . filterReturn ( filter ) ) ; }
Use the given filter function to transform the return value at this
point in the binder. The filter will be inserted into the handle, and
return values will pass through it before continuing.

The filter's argument must match the expected return value downstream
from this point in the binder, and the return value must match the
return value at this point in the binder.

@param filter the function to use to transform the return value at this point
@return a new SmartBinder with the filter applied