• Paul Jolly's avatar
    misc/wasm: use single map for string, symbol and object id mapping. · abaf53fb
    Paul Jolly authored
    Currently we use a globally unique symbol property on objects that get
    passed from JavaScript to Go to store a unique ID that Go then uses when
    referring back to the JavaScript object (via js.Value.ref). This
    approach fails however when a JavaScript object cannot be modified, i.e.
    cannot have new properties added or is frozen. The test that is added as
    part of this commit currently fails with:
    
      Cannot add property Symbol(), object is not extensible
    
    Instead we consolidate the string, symbol and object unique ID mapping
    into a single map. Map key equality is determined via strict equality,
    which is the semantic we want in this situation.
    
    Change-Id: Ieb2b50fc36d3c30e148aa7a41557f3c59cd33766
    Reviewed-on: https://go-review.googlesource.com/121799
    Run-TryBot: Paul Jolly <paul@myitcv.org.uk>
    TryBot-Result: Gobot Gobot <gobot@golang.org>
    Reviewed-by: 's avatarRichard Musiol <neelance@gmail.com>
    abaf53fb
Name
Last commit
Last update
..
js Loading commit data...
asm9_unix1_amd64.s Loading commit data...
asm9_unix2_amd64.s Loading commit data...
asm_darwin_386.s Loading commit data...
asm_darwin_amd64.s Loading commit data...
asm_darwin_arm.s Loading commit data...
asm_darwin_arm64.s Loading commit data...
asm_freebsd_arm.s Loading commit data...
asm_linux_386.s Loading commit data...
asm_linux_amd64.s Loading commit data...
asm_linux_arm.s Loading commit data...
asm_linux_arm64.s Loading commit data...
asm_linux_mips64x.s Loading commit data...
asm_linux_mipsx.s Loading commit data...
asm_linux_ppc64x.s Loading commit data...
asm_linux_s390x.s Loading commit data...
asm_nacl_386.s Loading commit data...
asm_nacl_amd64p32.s Loading commit data...
asm_nacl_arm.s Loading commit data...
asm_netbsd_arm.s Loading commit data...
asm_openbsd_arm.s Loading commit data...
asm_plan9_386.s Loading commit data...
asm_plan9_amd64.s Loading commit data...
asm_plan9_arm.s Loading commit data...
asm_solaris_amd64.s Loading commit data...
asm_unix_386.s Loading commit data...
asm_unix_amd64.s Loading commit data...
bpf_bsd.go Loading commit data...
const_plan9.go Loading commit data...
creds_test.go Loading commit data...
dir_plan9.go Loading commit data...
dirent.go Loading commit data...
dll_windows.go Loading commit data...
endian_big.go Loading commit data...
endian_little.go Loading commit data...
env_plan9.go Loading commit data...
env_unix.go Loading commit data...
env_windows.go Loading commit data...
errors_plan9.go Loading commit data...
exec_bsd.go Loading commit data...
exec_linux.go Loading commit data...
exec_linux_test.go Loading commit data...
exec_plan9.go Loading commit data...
exec_solaris.go Loading commit data...
exec_solaris_test.go Loading commit data...
exec_unix.go Loading commit data...
exec_unix_test.go Loading commit data...
exec_windows.go Loading commit data...
export_linux_test.go Loading commit data...
export_test.go Loading commit data...
export_unix_test.go Loading commit data...
fd_nacl.go Loading commit data...
flock.go Loading commit data...
flock_linux_32bit.go Loading commit data...
forkpipe.go Loading commit data...
forkpipe2.go Loading commit data...
fs_js.go Loading commit data...
fs_nacl.go Loading commit data...
lsf_linux.go Loading commit data...
mkall.sh Loading commit data...
mkerrors.sh Loading commit data...
mkpost.go Loading commit data...
mksyscall.pl Loading commit data...
mksyscall_solaris.pl Loading commit data...
mksyscall_windows.go Loading commit data...
mksysctl_openbsd.pl Loading commit data...
mksysnum_darwin.pl Loading commit data...
mksysnum_dragonfly.pl Loading commit data...
mksysnum_freebsd.pl Loading commit data...
mksysnum_linux.pl Loading commit data...
mksysnum_netbsd.pl Loading commit data...
mksysnum_openbsd.pl Loading commit data...
mksysnum_plan9.sh Loading commit data...
mmap_unix_test.go Loading commit data...
msan.go Loading commit data...
msan0.go Loading commit data...
net.go Loading commit data...
net_js.go Loading commit data...
net_nacl.go Loading commit data...
netlink_linux.go Loading commit data...
pwd_plan9.go Loading commit data...
route_bsd.go Loading commit data...
route_darwin.go Loading commit data...
route_dragonfly.go Loading commit data...
route_freebsd.go Loading commit data...
route_freebsd_32bit.go Loading commit data...
route_freebsd_64bit.go Loading commit data...
route_netbsd.go Loading commit data...
route_openbsd.go Loading commit data...
security_windows.go Loading commit data...
setuidgid_32_linux.go Loading commit data...
setuidgid_linux.go Loading commit data...
sockcmsg_linux.go Loading commit data...
sockcmsg_unix.go Loading commit data...
str.go Loading commit data...
syscall.go Loading commit data...
syscall_bsd.go Loading commit data...
syscall_bsd_test.go Loading commit data...
syscall_darwin.go Loading commit data...
syscall_darwin_386.go Loading commit data...
syscall_darwin_amd64.go Loading commit data...
syscall_darwin_arm.go Loading commit data...
syscall_darwin_arm64.go Loading commit data...
syscall_dragonfly.go Loading commit data...
syscall_dragonfly_amd64.go Loading commit data...
syscall_freebsd.go Loading commit data...
syscall_freebsd_386.go Loading commit data...
syscall_freebsd_amd64.go Loading commit data...
syscall_freebsd_arm.go Loading commit data...
syscall_getwd_bsd.go Loading commit data...
syscall_js.go Loading commit data...
syscall_linux.go Loading commit data...
syscall_linux_386.go Loading commit data...
syscall_linux_amd64.go Loading commit data...
syscall_linux_arm.go Loading commit data...
syscall_linux_arm64.go Loading commit data...
syscall_linux_mips64x.go Loading commit data...
syscall_linux_mipsx.go Loading commit data...
syscall_linux_ppc64x.go Loading commit data...
syscall_linux_s390x.go Loading commit data...
syscall_linux_test.go Loading commit data...
syscall_nacl.go Loading commit data...
syscall_nacl_386.go Loading commit data...
syscall_nacl_amd64p32.go Loading commit data...
syscall_nacl_arm.go Loading commit data...
syscall_netbsd.go Loading commit data...
syscall_netbsd_386.go Loading commit data...
syscall_netbsd_amd64.go Loading commit data...
syscall_netbsd_arm.go Loading commit data...
syscall_openbsd.go Loading commit data...
syscall_openbsd_386.go Loading commit data...
syscall_openbsd_amd64.go Loading commit data...
syscall_openbsd_arm.go Loading commit data...
syscall_plan9.go Loading commit data...
syscall_plan9_test.go Loading commit data...
syscall_solaris.go Loading commit data...
syscall_solaris_amd64.go Loading commit data...
syscall_test.go Loading commit data...
syscall_unix.go Loading commit data...
syscall_unix_test.go Loading commit data...
syscall_windows.go Loading commit data...
syscall_windows_386.go Loading commit data...
syscall_windows_amd64.go Loading commit data...
syscall_windows_test.go Loading commit data...
tables_nacljs.go Loading commit data...
time_nacl_386.s Loading commit data...
time_nacl_amd64p32.s Loading commit data...
time_nacl_arm.s Loading commit data...
timestruct.go Loading commit data...
types_darwin.go Loading commit data...
types_dragonfly.go Loading commit data...
types_freebsd.go Loading commit data...
types_linux.go Loading commit data...
types_netbsd.go Loading commit data...
types_openbsd.go Loading commit data...
types_solaris.go Loading commit data...
types_windows.go Loading commit data...
types_windows_386.go Loading commit data...
types_windows_amd64.go Loading commit data...
unzip_nacl.go Loading commit data...
zerrors_darwin_386.go Loading commit data...
zerrors_darwin_amd64.go Loading commit data...
zerrors_darwin_arm.go Loading commit data...
zerrors_darwin_arm64.go Loading commit data...
zerrors_dragonfly_amd64.go Loading commit data...
zerrors_freebsd_386.go Loading commit data...
zerrors_freebsd_amd64.go Loading commit data...
zerrors_freebsd_arm.go Loading commit data...
zerrors_linux_386.go Loading commit data...
zerrors_linux_amd64.go Loading commit data...
zerrors_linux_arm.go Loading commit data...
zerrors_linux_arm64.go Loading commit data...
zerrors_linux_mips.go Loading commit data...
zerrors_linux_mips64.go Loading commit data...
zerrors_linux_mips64le.go Loading commit data...
zerrors_linux_mipsle.go Loading commit data...
zerrors_linux_ppc64.go Loading commit data...
zerrors_linux_ppc64le.go Loading commit data...
zerrors_linux_s390x.go Loading commit data...
zerrors_netbsd_386.go Loading commit data...
zerrors_netbsd_amd64.go Loading commit data...
zerrors_netbsd_arm.go Loading commit data...
zerrors_openbsd_386.go Loading commit data...
zerrors_openbsd_amd64.go Loading commit data...
zerrors_openbsd_arm.go Loading commit data...
zerrors_solaris_amd64.go Loading commit data...
zerrors_windows.go Loading commit data...
zerrors_windows_386.go Loading commit data...
zerrors_windows_amd64.go Loading commit data...
zsyscall_darwin_386.go Loading commit data...
zsyscall_darwin_amd64.go Loading commit data...
zsyscall_darwin_arm.go Loading commit data...
zsyscall_darwin_arm64.go Loading commit data...
zsyscall_dragonfly_amd64.go Loading commit data...
zsyscall_freebsd_386.go Loading commit data...
zsyscall_freebsd_amd64.go Loading commit data...
zsyscall_freebsd_arm.go Loading commit data...
zsyscall_linux_386.go Loading commit data...
zsyscall_linux_amd64.go Loading commit data...
zsyscall_linux_arm.go Loading commit data...
zsyscall_linux_arm64.go Loading commit data...
zsyscall_linux_mips.go Loading commit data...
zsyscall_linux_mips64.go Loading commit data...
zsyscall_linux_mips64le.go Loading commit data...
zsyscall_linux_mipsle.go Loading commit data...
zsyscall_linux_ppc64.go Loading commit data...
zsyscall_linux_ppc64le.go Loading commit data...
zsyscall_linux_s390x.go Loading commit data...
zsyscall_nacl_386.go Loading commit data...
zsyscall_nacl_amd64p32.go Loading commit data...
zsyscall_nacl_arm.go Loading commit data...
zsyscall_netbsd_386.go Loading commit data...
zsyscall_netbsd_amd64.go Loading commit data...
zsyscall_netbsd_arm.go Loading commit data...
zsyscall_openbsd_386.go Loading commit data...
zsyscall_openbsd_amd64.go Loading commit data...
zsyscall_openbsd_arm.go Loading commit data...
zsyscall_plan9_386.go Loading commit data...
zsyscall_plan9_amd64.go Loading commit data...
zsyscall_plan9_arm.go Loading commit data...
zsyscall_solaris_amd64.go Loading commit data...
zsyscall_windows.go Loading commit data...
zsysctl_openbsd.go Loading commit data...
zsysnum_darwin_386.go Loading commit data...
zsysnum_darwin_amd64.go Loading commit data...
zsysnum_darwin_arm.go Loading commit data...
zsysnum_darwin_arm64.go Loading commit data...
zsysnum_dragonfly_amd64.go Loading commit data...
zsysnum_freebsd_386.go Loading commit data...
zsysnum_freebsd_amd64.go Loading commit data...
zsysnum_freebsd_arm.go Loading commit data...
zsysnum_linux_386.go Loading commit data...
zsysnum_linux_amd64.go Loading commit data...
zsysnum_linux_arm.go Loading commit data...
zsysnum_linux_arm64.go Loading commit data...
zsysnum_linux_mips.go Loading commit data...
zsysnum_linux_mips64.go Loading commit data...
zsysnum_linux_mips64le.go Loading commit data...
zsysnum_linux_mipsle.go Loading commit data...
zsysnum_linux_ppc64.go Loading commit data...
zsysnum_linux_ppc64le.go Loading commit data...
zsysnum_linux_s390x.go Loading commit data...
zsysnum_netbsd_386.go Loading commit data...
zsysnum_netbsd_amd64.go Loading commit data...
zsysnum_netbsd_arm.go Loading commit data...
zsysnum_openbsd_386.go Loading commit data...
zsysnum_openbsd_amd64.go Loading commit data...
zsysnum_openbsd_arm.go Loading commit data...
zsysnum_plan9.go Loading commit data...
zsysnum_solaris_amd64.go Loading commit data...
zsysnum_windows_386.go Loading commit data...
zsysnum_windows_amd64.go Loading commit data...
ztypes_darwin_386.go Loading commit data...
ztypes_darwin_amd64.go Loading commit data...
ztypes_darwin_arm.go Loading commit data...
ztypes_darwin_arm64.go Loading commit data...
ztypes_dragonfly_amd64.go Loading commit data...
ztypes_freebsd_386.go Loading commit data...
ztypes_freebsd_amd64.go Loading commit data...
ztypes_freebsd_arm.go Loading commit data...
ztypes_linux_386.go Loading commit data...
ztypes_linux_amd64.go Loading commit data...
ztypes_linux_arm.go Loading commit data...
ztypes_linux_arm64.go Loading commit data...
ztypes_linux_mips.go Loading commit data...
ztypes_linux_mips64.go Loading commit data...
ztypes_linux_mips64le.go Loading commit data...
ztypes_linux_mipsle.go Loading commit data...
ztypes_linux_ppc64.go Loading commit data...
ztypes_linux_ppc64le.go Loading commit data...
ztypes_linux_s390x.go Loading commit data...
ztypes_netbsd_386.go Loading commit data...
ztypes_netbsd_amd64.go Loading commit data...
ztypes_netbsd_arm.go Loading commit data...
ztypes_openbsd_386.go Loading commit data...
ztypes_openbsd_amd64.go Loading commit data...
ztypes_openbsd_arm.go Loading commit data...
ztypes_solaris_amd64.go Loading commit data...