mirror of
https://github.com/servo/servo.git
synced 2025-08-03 12:40:06 +01:00
WebIDL: Use ArrayBuffer
instead of raw JSObject
in bindings (#31202)
* WebIDL: Use ArrayBuffer instead of raw JSObject in bindings Signed-off-by: Bentaimia Haddadi <haddadi.taym@gmail.com> * Convert GPUBufferMapInfo mapping to Arc<Mutex> * Remove #[allow(unsafe_code)] from GPUBuffer * Add doc comments * Implement trace for Arc<Mutex<Vec<T>>> Signed-off-by: Bentaimia Haddadi <haddadi.taym@gmail.com> * Use #[no_trace] for GPUBufferMapInfo.mapping * Make create_new_external_array_buffer generic Signed-off-by: Bentaimia Haddadi <haddadi.taym@gmail.com> * Address review comments * Remove HeapTypedArray::new and avoid cloning Arc Signed-off-by: Bentaimia Haddadi <haddadi.taym@gmail.com> * Use expect for GetMappedRange and ReadAsArrayBuffer Signed-off-by: Bentaimia Haddadi <haddadi.taym@gmail.com> * Use doc comments for FileReaderSyncMethods Signed-off-by: Bentaimia Haddadi <haddadi.taym@gmail.com> * Return for Error::JsFailed GetMappedRange and ReadAsArrayBuffer Signed-off-by: Bentaimia Haddadi <haddadi.taym@gmail.com> * Fix detached_internal implementation and comments Signed-off-by: Bentaimia Haddadi <haddadi.taym@gmail.com> * format code Signed-off-by: Bentaimia Haddadi <haddadi.taym@gmail.com> * Update expectations --------- Signed-off-by: Bentaimia Haddadi <haddadi.taym@gmail.com> Co-authored-by: sagudev <16504129+sagudev@users.noreply.github.com>
This commit is contained in:
parent
e6baa26ff8
commit
9be989146d
7 changed files with 121 additions and 75 deletions
|
@ -128,6 +128,7 @@ builtinNames = {
|
|||
IDLType.Tags.uint32array: 'Uint32Array',
|
||||
IDLType.Tags.float32array: 'Float32Array',
|
||||
IDLType.Tags.float64array: 'Float64Array',
|
||||
IDLType.Tags.arrayBuffer: 'ArrayBuffer',
|
||||
}
|
||||
|
||||
numericTags = [
|
||||
|
@ -1481,7 +1482,7 @@ def getRetvalDeclarationForType(returnType, descriptorProvider):
|
|||
return CGGeneric("()")
|
||||
if returnType.isPrimitive() and returnType.tag() in builtinNames:
|
||||
return builtin_return_type(returnType)
|
||||
if returnType.isTypedArray() and returnType.tag() in builtinNames:
|
||||
if is_typed_array(returnType) and returnType.tag() in builtinNames:
|
||||
return builtin_return_type(returnType)
|
||||
if returnType.isDOMString():
|
||||
result = CGGeneric("DOMString")
|
||||
|
@ -6516,6 +6517,7 @@ def generate_imports(config, cgthings, descriptors, callbacks=None, dictionaries
|
|||
'js::typedarray::Uint32Array',
|
||||
'js::typedarray::Float32Array',
|
||||
'js::typedarray::Float64Array',
|
||||
'js::typedarray::ArrayBuffer',
|
||||
'crate::dom',
|
||||
'crate::dom::bindings',
|
||||
'crate::dom::bindings::codegen::InterfaceObjectMap',
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue