You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
Copy file name to clipboardExpand all lines: document/js-api/index.bs
+13-1Lines changed: 13 additions & 1 deletion
Original file line number
Diff line number
Diff line change
@@ -1400,10 +1400,20 @@ To <dfn export>parse a WebAssembly module</dfn> given a <a>byte sequence</a> |by
1400
1400
1. Let |stableBytes| be a [=get a copy of the buffer source|copy of the bytes held by the buffer=] |bytes|.
1401
1401
1. [=Compile a WebAssembly module|Compile the WebAssembly module=] |stableBytes| and store the result as |module|.
1402
1402
1. If |module| is [=error=], throw a {{CompileError}} exception.
1403
+
1. Note: When integrating with the JS String Builtins proposal, |builtinSetNames| should be passed in the following step as « "js-string" » and |importedStringModule| as null.
1403
1404
1. [=Construct a WebAssembly module object=] from |module| and |bytes|, and let |module| be the result.
1404
1405
1. Let |requestedModules| be a set.
1405
-
1. For each (|moduleName|, <var ignore>name</var>, <var ignore>type</var>) in [=module_imports=](|module|.\[[Module]]),
1406
+
1. For each (|moduleName|, |name|, |type|) in [=module_imports=](|module|.\[[Module]]),
1407
+
1. If |moduleName| starts with the prefix "wasm-js:",
1408
+
1. Throw a {{LinkError}} exception.
1409
+
1. If |name| starts with the prefix "wasm:" or "wasm-js:",
1410
+
1. Throw a {{LinkError}} exception.
1411
+
1. Note: The following step only applies when integrating with the JS String Builtins proposal.
1412
+
1. If [=Find a builtin=] with (|moduleName|, |name|, |type|) and builtins |module|.\[[BuiltinSets]] is not null, then [=iteration/continue=].
1406
1413
1. [=set/Append=] |moduleName| to |requestedModules|.
1414
+
1. For each (|name|, <var ignore>type</var>) in [=module_exports=](|module|.\[[Module]])
1415
+
1. If |name| starts with the prefix "wasm:" or "wasm-js:",
1416
+
1. Throw a {{LinkError}} exception.
1407
1417
1. Let |moduleRecord| be {
1408
1418
<!-- WebAssembly Module Records -->
1409
1419
\[[Instance]]: ~empty~,
@@ -1489,6 +1499,8 @@ WebAssembly Module Records have the following methods:
1489
1499
1. Let |module| be |record|.\[[ModuleSource]].\[[Module]].
1490
1500
1. Let |imports| be « ».
1491
1501
1. [=list/iterate|For each=] (|importedModuleName|, |name|, |importtype|) in [=module_imports=](|module|),
1502
+
1. Note: The following step only applies when integrating with the JS String Builtins proposal.
1503
+
1. If [=Find a builtin=] with (|importedModuleName|, |name|) and builtins |module|.\[[BuiltinSets]] is not null, then [=iteration/continue=].
1492
1504
1. Let |importedModule| be [$GetImportedModule$](|record|, |importedModuleName|).
1493
1505
1. Let |resolution| be |importedModule|.ResolveExport(|name|).
1494
1506
1. Assert: |resolution| is a [=ResolvedBinding Record=], as validated during environment initialization.
0 commit comments