setVector method

void setVector(
  1. String name,
  2. Float32List vector
)

Set a FP32 vector field.

Implementation

void setVector(String name, Float32List vector) {
  final namePtr = name.toNativeUtf8().cast<Char>();
  final dataPtr = calloc<Float>(vector.length);
  try {
    for (var i = 0; i < vector.length; i++) {
      dataPtr[i] = vector[i];
    }
    checkError(
      _b.zvec_doc_add_field_by_value(
        _ptr,
        namePtr,
        DataType.vectorFp32.value,
        dataPtr.cast(),
        vector.length * sizeOf<Float>(),
      ),
    );
  } finally {
    calloc.free(namePtr);
    calloc.free(dataPtr);
  }
}