pub fn binary_mut<T, D, F>(
    lhs: &PrimitiveArray<T>,
    rhs: &PrimitiveArray<D>,
    data_type: ArrowDataType,
    op: F
) -> PrimitiveArray<T>
where T: NativeType, D: NativeType, F: FnMut(T, D) -> T,