1
0
Fork 0
mirror of https://github.com/denoland/deno.git synced 2024-11-21 15:04:11 -05:00

perf(web): use DOMString for BlobParts (#13979)

This commit is contained in:
Divy Srivastava 2022-03-16 12:58:38 +05:30 committed by GitHub
parent 395f527238
commit 697b60a335
No known key found for this signature in database
GPG key ID: 4AEE18F83AFDEB23
2 changed files with 12 additions and 1 deletions

View file

@ -56,6 +56,13 @@ function benchUrlParse() {
});
}
function benchLargeBlobText() {
const input = "long-string".repeat(999_999);
benchSync("blob_text_large", 3, () => {
new Blob([input]).text();
});
}
function benchDateNow() {
benchSync("date_now", 5e5, () => {
Date.now();
@ -123,6 +130,7 @@ async function main() {
// A common "language feature", that should be fast
// also a decent representation of a non-trivial JSON-op
benchUrlParse();
benchLargeBlobText();
benchB64RtLong();
benchB64RtShort();
// IO ops

View file

@ -394,7 +394,10 @@
return webidl.converters["ArrayBufferView"](V, opts);
}
}
return webidl.converters["USVString"](V, opts);
// BlobPart is passed to processBlobParts after conversion, which calls core.encode()
// on the string.
// core.encode() is equivalent to USVString normalization.
return webidl.converters["DOMString"](V, opts);
};
webidl.converters["sequence<BlobPart>"] = webidl.createSequenceConverter(
webidl.converters["BlobPart"],