fn byte_substring<T: ByteArrayType>( array: &GenericByteArray<T>, start: T::Offset, length: Option<T::Offset>, ) -> Result<ArrayRef, ArrowError>where <T as ByteArrayType>::Native: PartialEq,