void SharedTypedArrayObject::setElement(SharedTypedArrayObject &obj, uint32_t index, double d) { MOZ_ASSERT(index < obj.length()); switch (obj.type()) { case Scalar::Int8: SharedTypedArrayObjectTemplate<int8_t>::setIndexValue(obj, index, d); break; case Scalar::Uint8: SharedTypedArrayObjectTemplate<uint8_t>::setIndexValue(obj, index, d); break; case Scalar::Uint8Clamped: SharedTypedArrayObjectTemplate<uint8_clamped>::setIndexValue(obj, index, d); break; case Scalar::Int16: SharedTypedArrayObjectTemplate<int16_t>::setIndexValue(obj, index, d); break; case Scalar::Uint16: SharedTypedArrayObjectTemplate<uint16_t>::setIndexValue(obj, index, d); break; case Scalar::Int32: SharedTypedArrayObjectTemplate<int32_t>::setIndexValue(obj, index, d); break; case Scalar::Uint32: SharedTypedArrayObjectTemplate<uint32_t>::setIndexValue(obj, index, d); break; case Scalar::Float32: SharedTypedArrayObjectTemplate<float>::setIndexValue(obj, index, d); break; case Scalar::Float64: SharedTypedArrayObjectTemplate<double>::setIndexValue(obj, index, d); break; default: MOZ_CRASH("Unknown SharedTypedArray type"); } }
static void setIndex(SharedTypedArrayObject &tarray, uint32_t index, NativeType val) { MOZ_ASSERT(index < tarray.length()); static_cast<NativeType*>(tarray.viewData())[index] = val; }