diff options
Diffstat (limited to 'ext/fetch')
-rw-r--r-- | ext/fetch/20_headers.js | 60 | ||||
-rw-r--r-- | ext/fetch/21_formdata.js | 72 | ||||
-rw-r--r-- | ext/fetch/22_body.js | 16 | ||||
-rw-r--r-- | ext/fetch/23_request.js | 18 | ||||
-rw-r--r-- | ext/fetch/23_response.js | 34 | ||||
-rw-r--r-- | ext/fetch/26_fetch.js | 9 |
6 files changed, 86 insertions, 123 deletions
diff --git a/ext/fetch/20_headers.js b/ext/fetch/20_headers.js index 29b4540f9..7ec6751fa 100644 --- a/ext/fetch/20_headers.js +++ b/ext/fetch/20_headers.js @@ -251,10 +251,7 @@ class Headers { constructor(init = undefined) { const prefix = "Failed to construct 'Headers'"; if (init !== undefined) { - init = webidl.converters["HeadersInit"](init, { - prefix, - context: "Argument 1", - }); + init = webidl.converters["HeadersInit"](init, prefix, "Argument 1"); } this[webidl.brand] = webidl.brand; @@ -272,14 +269,8 @@ class Headers { webidl.assertBranded(this, HeadersPrototype); const prefix = "Failed to execute 'append' on 'Headers'"; webidl.requiredArguments(arguments.length, 2, prefix); - name = webidl.converters["ByteString"](name, { - prefix, - context: "Argument 1", - }); - value = webidl.converters["ByteString"](value, { - prefix, - context: "Argument 2", - }); + name = webidl.converters["ByteString"](name, prefix, "Argument 1"); + value = webidl.converters["ByteString"](value, prefix, "Argument 2"); appendHeader(this, name, value); } @@ -289,10 +280,7 @@ class Headers { delete(name) { const prefix = "Failed to execute 'delete' on 'Headers'"; webidl.requiredArguments(arguments.length, 1, prefix); - name = webidl.converters["ByteString"](name, { - prefix, - context: "Argument 1", - }); + name = webidl.converters["ByteString"](name, prefix, "Argument 1"); if (!RegExpPrototypeTest(HTTP_TOKEN_CODE_POINT_RE, name)) { throw new TypeError("Header name is not valid."); @@ -317,10 +305,7 @@ class Headers { get(name) { const prefix = "Failed to execute 'get' on 'Headers'"; webidl.requiredArguments(arguments.length, 1, prefix); - name = webidl.converters["ByteString"](name, { - prefix, - context: "Argument 1", - }); + name = webidl.converters["ByteString"](name, prefix, "Argument 1"); if (!RegExpPrototypeTest(HTTP_TOKEN_CODE_POINT_RE, name)) { throw new TypeError("Header name is not valid."); @@ -336,10 +321,7 @@ class Headers { has(name) { const prefix = "Failed to execute 'has' on 'Headers'"; webidl.requiredArguments(arguments.length, 1, prefix); - name = webidl.converters["ByteString"](name, { - prefix, - context: "Argument 1", - }); + name = webidl.converters["ByteString"](name, prefix, "Argument 1"); if (!RegExpPrototypeTest(HTTP_TOKEN_CODE_POINT_RE, name)) { throw new TypeError("Header name is not valid."); @@ -363,14 +345,8 @@ class Headers { webidl.assertBranded(this, HeadersPrototype); const prefix = "Failed to execute 'set' on 'Headers'"; webidl.requiredArguments(arguments.length, 2, prefix); - name = webidl.converters["ByteString"](name, { - prefix, - context: "Argument 1", - }); - value = webidl.converters["ByteString"](value, { - prefix, - context: "Argument 2", - }); + name = webidl.converters["ByteString"](name, prefix, "Argument 1"); + value = webidl.converters["ByteString"](value, prefix, "Argument 2"); value = normalizeHeaderValue(value); @@ -420,19 +396,29 @@ webidl.mixinPairIterable("Headers", Headers, _iterableHeaders, 0, 1); webidl.configurePrototype(Headers); const HeadersPrototype = Headers.prototype; -webidl.converters["HeadersInit"] = (V, opts) => { +webidl.converters["HeadersInit"] = (V, prefix, context, opts) => { // Union for (sequence<sequence<ByteString>> or record<ByteString, ByteString>) if (webidl.type(V) === "Object" && V !== null) { if (V[SymbolIterator] !== undefined) { - return webidl.converters["sequence<sequence<ByteString>>"](V, opts); + return webidl.converters["sequence<sequence<ByteString>>"]( + V, + prefix, + context, + opts, + ); } - return webidl.converters["record<ByteString, ByteString>"](V, opts); + return webidl.converters["record<ByteString, ByteString>"]( + V, + prefix, + context, + opts, + ); } throw webidl.makeException( TypeError, "The provided value is not of type '(sequence<sequence<ByteString>> or record<ByteString, ByteString>)'", - opts.prefix, - opts.context, + prefix, + context, ); }; webidl.converters["Headers"] = webidl.createInterfaceConverter( diff --git a/ext/fetch/21_formdata.js b/ext/fetch/21_formdata.js index 1961643d2..330ed92e6 100644 --- a/ext/fetch/21_formdata.js +++ b/ext/fetch/21_formdata.js @@ -103,26 +103,26 @@ class FormData { const prefix = "Failed to execute 'append' on 'FormData'"; webidl.requiredArguments(arguments.length, 2, prefix); - name = webidl.converters["USVString"](name, { - prefix, - context: "Argument 1", - }); + name = webidl.converters["USVString"](name, prefix, "Argument 1"); if (ObjectPrototypeIsPrototypeOf(BlobPrototype, valueOrBlobValue)) { - valueOrBlobValue = webidl.converters["Blob"](valueOrBlobValue, { + valueOrBlobValue = webidl.converters["Blob"]( + valueOrBlobValue, prefix, - context: "Argument 2", - }); + "Argument 2", + ); if (filename !== undefined) { - filename = webidl.converters["USVString"](filename, { + filename = webidl.converters["USVString"]( + filename, prefix, - context: "Argument 3", - }); + "Argument 3", + ); } } else { - valueOrBlobValue = webidl.converters["USVString"](valueOrBlobValue, { + valueOrBlobValue = webidl.converters["USVString"]( + valueOrBlobValue, prefix, - context: "Argument 2", - }); + "Argument 2", + ); } const entry = createEntry(name, valueOrBlobValue, filename); @@ -139,10 +139,7 @@ class FormData { const prefix = "Failed to execute 'name' on 'FormData'"; webidl.requiredArguments(arguments.length, 1, prefix); - name = webidl.converters["USVString"](name, { - prefix, - context: "Argument 1", - }); + name = webidl.converters["USVString"](name, prefix, "Argument 1"); const list = this[entryList]; for (let i = 0; i < list.length; i++) { @@ -162,10 +159,7 @@ class FormData { const prefix = "Failed to execute 'get' on 'FormData'"; webidl.requiredArguments(arguments.length, 1, prefix); - name = webidl.converters["USVString"](name, { - prefix, - context: "Argument 1", - }); + name = webidl.converters["USVString"](name, prefix, "Argument 1"); const entries = this[entryList]; for (let i = 0; i < entries.length; ++i) { @@ -184,10 +178,7 @@ class FormData { const prefix = "Failed to execute 'getAll' on 'FormData'"; webidl.requiredArguments(arguments.length, 1, prefix); - name = webidl.converters["USVString"](name, { - prefix, - context: "Argument 1", - }); + name = webidl.converters["USVString"](name, prefix, "Argument 1"); const returnList = []; const entries = this[entryList]; @@ -207,10 +198,7 @@ class FormData { const prefix = "Failed to execute 'has' on 'FormData'"; webidl.requiredArguments(arguments.length, 1, prefix); - name = webidl.converters["USVString"](name, { - prefix, - context: "Argument 1", - }); + name = webidl.converters["USVString"](name, prefix, "Argument 1"); const entries = this[entryList]; for (let i = 0; i < entries.length; ++i) { @@ -231,26 +219,26 @@ class FormData { const prefix = "Failed to execute 'set' on 'FormData'"; webidl.requiredArguments(arguments.length, 2, prefix); - name = webidl.converters["USVString"](name, { - prefix, - context: "Argument 1", - }); + name = webidl.converters["USVString"](name, prefix, "Argument 1"); if (ObjectPrototypeIsPrototypeOf(BlobPrototype, valueOrBlobValue)) { - valueOrBlobValue = webidl.converters["Blob"](valueOrBlobValue, { + valueOrBlobValue = webidl.converters["Blob"]( + valueOrBlobValue, prefix, - context: "Argument 2", - }); + "Argument 2", + ); if (filename !== undefined) { - filename = webidl.converters["USVString"](filename, { + filename = webidl.converters["USVString"]( + filename, prefix, - context: "Argument 3", - }); + "Argument 3", + ); } } else { - valueOrBlobValue = webidl.converters["USVString"](valueOrBlobValue, { + valueOrBlobValue = webidl.converters["USVString"]( + valueOrBlobValue, prefix, - context: "Argument 2", - }); + "Argument 2", + ); } const entry = createEntry(name, valueOrBlobValue, filename); diff --git a/ext/fetch/22_body.js b/ext/fetch/22_body.js index 875ec0620..82703af76 100644 --- a/ext/fetch/22_body.js +++ b/ext/fetch/22_body.js @@ -448,16 +448,16 @@ function extractBody(object) { return { body, contentType }; } -webidl.converters["BodyInit_DOMString"] = (V, opts) => { +webidl.converters["BodyInit_DOMString"] = (V, prefix, context, opts) => { // Union for (ReadableStream or Blob or ArrayBufferView or ArrayBuffer or FormData or URLSearchParams or USVString) if (ObjectPrototypeIsPrototypeOf(ReadableStreamPrototype, V)) { - return webidl.converters["ReadableStream"](V, opts); + return webidl.converters["ReadableStream"](V, prefix, context, opts); } else if (ObjectPrototypeIsPrototypeOf(BlobPrototype, V)) { - return webidl.converters["Blob"](V, opts); + return webidl.converters["Blob"](V, prefix, context, opts); } else if (ObjectPrototypeIsPrototypeOf(FormDataPrototype, V)) { - return webidl.converters["FormData"](V, opts); + return webidl.converters["FormData"](V, prefix, context, opts); } else if (ObjectPrototypeIsPrototypeOf(URLSearchParamsPrototype, V)) { - return webidl.converters["URLSearchParams"](V, opts); + return webidl.converters["URLSearchParams"](V, prefix, context, opts); } if (typeof V === "object") { if ( @@ -465,16 +465,16 @@ webidl.converters["BodyInit_DOMString"] = (V, opts) => { // deno-lint-ignore prefer-primordials ObjectPrototypeIsPrototypeOf(SharedArrayBuffer.prototype, V) ) { - return webidl.converters["ArrayBuffer"](V, opts); + return webidl.converters["ArrayBuffer"](V, prefix, context, opts); } if (ArrayBufferIsView(V)) { - return webidl.converters["ArrayBufferView"](V, opts); + return webidl.converters["ArrayBufferView"](V, prefix, context, opts); } } // BodyInit conversion is passed to extractBody(), which calls core.encode(). // core.encode() will UTF-8 encode strings with replacement, being equivalent to the USV normalization. // Therefore we can convert to DOMString instead of USVString and avoid a costly redundant conversion. - return webidl.converters["DOMString"](V, opts); + return webidl.converters["DOMString"](V, prefix, context, opts); }; webidl.converters["BodyInit_DOMString?"] = webidl.createNullableConverter( webidl.converters["BodyInit_DOMString"], diff --git a/ext/fetch/23_request.js b/ext/fetch/23_request.js index 22c1f8354..d3132dc62 100644 --- a/ext/fetch/23_request.js +++ b/ext/fetch/23_request.js @@ -274,14 +274,12 @@ class Request { constructor(input, init = {}) { const prefix = "Failed to construct 'Request'"; webidl.requiredArguments(arguments.length, 1, prefix); - input = webidl.converters["RequestInfo_DOMString"](input, { + input = webidl.converters["RequestInfo_DOMString"]( + input, prefix, - context: "Argument 1", - }); - init = webidl.converters["RequestInit"](init, { - prefix, - context: "Argument 2", - }); + "Argument 1", + ); + init = webidl.converters["RequestInit"](init, prefix, "Argument 2"); this[webidl.brand] = webidl.brand; @@ -501,15 +499,15 @@ webidl.converters["Request"] = webidl.createInterfaceConverter( "Request", RequestPrototype, ); -webidl.converters["RequestInfo_DOMString"] = (V, opts) => { +webidl.converters["RequestInfo_DOMString"] = (V, prefix, context, opts) => { // Union for (Request or USVString) if (typeof V == "object") { if (ObjectPrototypeIsPrototypeOf(RequestPrototype, V)) { - return webidl.converters["Request"](V, opts); + return webidl.converters["Request"](V, prefix, context, opts); } } // Passed to new URL(...) which implicitly converts DOMString -> USVString - return webidl.converters["DOMString"](V, opts); + return webidl.converters["DOMString"](V, prefix, context, opts); }; webidl.converters["RequestRedirect"] = webidl.createEnumConverter( "RequestRedirect", diff --git a/ext/fetch/23_response.js b/ext/fetch/23_response.js index 86799252b..52ebc91fe 100644 --- a/ext/fetch/23_response.js +++ b/ext/fetch/23_response.js @@ -257,14 +257,8 @@ class Response { */ static redirect(url, status = 302) { const prefix = "Failed to call 'Response.redirect'"; - url = webidl.converters["USVString"](url, { - prefix, - context: "Argument 1", - }); - status = webidl.converters["unsigned short"](status, { - prefix, - context: "Argument 2", - }); + url = webidl.converters["USVString"](url, prefix, "Argument 1"); + status = webidl.converters["unsigned short"](status, prefix, "Argument 2"); const baseURL = getLocationHref(); const parsedURL = new URL(url, baseURL); @@ -291,10 +285,7 @@ class Response { static json(data = undefined, init = {}) { const prefix = "Failed to call 'Response.json'"; data = webidl.converters.any(data); - init = webidl.converters["ResponseInit_fast"](init, { - prefix, - context: "Argument 2", - }); + init = webidl.converters["ResponseInit_fast"](init, prefix, "Argument 2"); const str = serializeJSValueToJSONString(data); const res = extractBody(str); @@ -315,14 +306,8 @@ class Response { */ constructor(body = null, init = undefined) { const prefix = "Failed to construct 'Response'"; - body = webidl.converters["BodyInit_DOMString?"](body, { - prefix, - context: "Argument 1", - }); - init = webidl.converters["ResponseInit_fast"](init, { - prefix, - context: "Argument 2", - }); + body = webidl.converters["BodyInit_DOMString?"](body, prefix, "Argument 1"); + init = webidl.converters["ResponseInit_fast"](init, prefix, "Argument 2"); this[_response] = newInnerResponse(); this[_headers] = headersFromHeaderList( @@ -463,7 +448,12 @@ webidl.converters["ResponseInit"] = webidl.createDictionaryConverter( converter: webidl.converters["HeadersInit"], }], ); -webidl.converters["ResponseInit_fast"] = function (init, opts) { +webidl.converters["ResponseInit_fast"] = function ( + init, + prefix, + context, + opts, +) { if (init === undefined || init === null) { return { status: 200, statusText: "", headers: undefined }; } @@ -482,7 +472,7 @@ webidl.converters["ResponseInit_fast"] = function (init, opts) { return { status, statusText, headers }; } // Slow default path - return webidl.converters["ResponseInit"](init, opts); + return webidl.converters["ResponseInit"](init, prefix, context, opts); }; /** diff --git a/ext/fetch/26_fetch.js b/ext/fetch/26_fetch.js index 42e1ae962..5084fab34 100644 --- a/ext/fetch/26_fetch.js +++ b/ext/fetch/26_fetch.js @@ -523,10 +523,11 @@ function handleWasmStreaming(source, rid) { // This implements part of // https://webassembly.github.io/spec/web-api/#compile-a-potential-webassembly-response try { - const res = webidl.converters["Response"](source, { - prefix: "Failed to call 'WebAssembly.compileStreaming'", - context: "Argument 1", - }); + const res = webidl.converters["Response"]( + source, + "Failed to call 'WebAssembly.compileStreaming'", + "Argument 1", + ); // 2.3. // The spec is ambiguous here, see |