WebAssembly.idl 966 B

1234567891011121314151617181920212223
  1. #import <WebAssembly/Instance.idl>
  2. #import <WebAssembly/Module.idl>
  3. #import <Fetch/Response.idl>
  4. dictionary WebAssemblyInstantiatedSource {
  5. required Module module;
  6. required Instance instance;
  7. };
  8. // https://webassembly.github.io/spec/js-api/#webassembly-namespace
  9. // https://webassembly.github.io/spec/web-api/index.html#streaming-modules
  10. [Exposed=*, WithGCVisitor, WithFinalizer]
  11. namespace WebAssembly {
  12. // FIXME: Streaming APIs are supposed to be only exposed to Window, Worker
  13. boolean validate(BufferSource bytes);
  14. Promise<Module> compile(BufferSource bytes);
  15. Promise<Module> compileStreaming(Promise<Response> source);
  16. Promise<WebAssemblyInstantiatedSource> instantiate(BufferSource bytes, optional object importObject);
  17. Promise<WebAssemblyInstantiatedSource> instantiateStreaming(Promise<Response> source, optional object importObject);
  18. Promise<Instance> instantiate(Module moduleObject, optional object importObject);
  19. };