servo/components/script/dom/bindings
Josh Matthews 7b16ae26b4
Reduce indexing boilerplate for serializable/transferrable objects. (#36624)
Rather than creating unique types for each pipeline-namespaced index
type (eg. MessagePortId, DomExceptionId, etc.), we can create a generic
common type that uses a marker to prevent type confusion. This change
allows us to reduce the boilerplate code required when implementing
serializable/transferable interfaces, since the structured clone
implementation can rely on the common type.

Testing: Existing WPT tests for serialization and transferring provide
coverage.

---------

Signed-off-by: Josh Matthews <josh@joshmatthews.net>
2025-04-22 02:02:02 +00:00
..
buffer_source.rs Add serde and wgsl features to wgpu-core (#36411) 2025-04-09 10:09:13 +00:00
cell.rs Update rustfmt to the 2024 style edition (#35764) 2025-03-03 11:26:53 +00:00
constructor.rs Use version of markup5ever with web_atoms crate (#36542) 2025-04-19 11:49:37 +00:00
conversions.rs Move generated bindings to script_bindings (#36323) 2025-04-04 06:45:08 +00:00
error.rs Support optional message for dataclone error (#36308) 2025-04-13 18:10:04 +00:00
frozenarray.rs Use explicit reborrows with mozjs::MutableHandle (#35892) 2025-03-23 01:23:52 +00:00
function.rs Cleanups for future script crate split (#35987) 2025-03-16 13:46:14 +00:00
import.rs Move generated bindings to script_bindings (#36323) 2025-04-04 06:45:08 +00:00
inheritance.rs More miscellaneous script splitting changes (#36220) 2025-03-30 11:06:30 +00:00
like.rs Move more bindings types to script_bindings (#35620) 2025-02-23 14:25:46 +00:00
mod.rs script: copy include! files from script_bindings to script's OUT_DIR (#36384) 2025-04-08 19:22:24 +00:00
principals.rs Move generated bindings to script_bindings (#36323) 2025-04-04 06:45:08 +00:00
proxyhandler.rs Move generated bindings to script_bindings (#36323) 2025-04-04 06:45:08 +00:00
refcounted.rs refactor: add CanGc as argument to Promise::reject_error (#35646) 2025-02-25 10:12:58 +00:00
reflector.rs Move generated bindings to script_bindings (#36323) 2025-04-04 06:45:08 +00:00
root.rs More miscellaneous script splitting changes (#36220) 2025-03-30 11:06:30 +00:00
serializable.rs Reduce indexing boilerplate for serializable/transferrable objects. (#36624) 2025-04-22 02:02:02 +00:00
settings_stack.rs Move generated bindings to script_bindings (#36323) 2025-04-04 06:45:08 +00:00
str.rs Update rustfmt to the 2024 style edition (#35764) 2025-03-03 11:26:53 +00:00
structuredclone.rs Reduce indexing boilerplate for serializable/transferrable objects. (#36624) 2025-04-22 02:02:02 +00:00
trace.rs Move generated bindings to script_bindings (#36323) 2025-04-04 06:45:08 +00:00
transferable.rs Reduce indexing boilerplate for serializable/transferrable objects. (#36624) 2025-04-22 02:02:02 +00:00
utils.rs Eagerly define interfaces on non-Window globals (#36604) 2025-04-21 03:32:21 +00:00
weakref.rs Move generated bindings to script_bindings (#36323) 2025-04-04 06:45:08 +00:00
xmlname.rs Use version of markup5ever with web_atoms crate (#36542) 2025-04-19 11:49:37 +00:00