MCPcopy Create free account
hub / github.com/apache/arrow / ExecComputedBitmap

Function ExecComputedBitmap

cpp/src/arrow/compute/exec_test.cc:910–924  ·  view source on GitHub ↗

Source from the content-addressed store, hash-verified

908}
909
910Status ExecComputedBitmap(KernelContext* ctx, const ExecSpan& batch, ExecResult* out) {
911 // Propagate nulls not used. Check that the out bitmap isn't the same already
912 // as the input bitmap
913 const ArraySpan& arg0 = batch[0].array;
914 ArraySpan* out_arr = out->array_span_mutable();
915 if (CountSetBits(arg0.buffers[0].data, arg0.offset, batch.length) > 0) {
916 // Check that the bitmap has not been already copied over
917 DCHECK(!BitmapEquals(arg0.buffers[0].data, arg0.offset, out_arr->buffers[0].data,
918 out_arr->offset, batch.length));
919 }
920
921 CopyBitmap(arg0.buffers[0].data, arg0.offset, batch.length, out_arr->buffers[0].data,
922 out_arr->offset);
923 return ExecCopyArraySpan(ctx, batch, out);
924}
925
926Status ExecNoPreallocatedData(KernelContext* ctx, const ExecSpan& batch,
927 ExecResult* out) {

Callers

nothing calls this directly

Calls 4

ExecCopyArraySpanFunction · 0.85
CountSetBitsFunction · 0.50
BitmapEqualsFunction · 0.50
CopyBitmapFunction · 0.50

Tested by

no test coverage detected