unsafe fn try_transfer<T: Transferable + IDLInterface>(
interface: Transferrable,
obj: HandleObject,
cx: *mut JSContext,
sc_writer: &mut StructuredDataWriter,
tag: *mut u32,
ownership: *mut TransferableOwnership,
extra_data: *mut u64,
) -> Result<(), ()>