diff options
author | 2022-06-27 05:31:58 -0700 | |
---|---|---|
committer | 2022-06-27 05:31:58 -0700 | |
commit | 6544b2b57ee8b6ae8f805f975aa3bc3895c46881 (patch) | |
tree | 578bca52db65a54c4a353a35c7050aa34b60bd4f /src/bun.js/builtins/cpp | |
parent | 3943ce5ac52e00a02ce9c5644cf715845d5275b0 (diff) | |
download | bun-6544b2b57ee8b6ae8f805f975aa3bc3895c46881.tar.gz bun-6544b2b57ee8b6ae8f805f975aa3bc3895c46881.tar.zst bun-6544b2b57ee8b6ae8f805f975aa3bc3895c46881.zip |
Faster web streams
Diffstat (limited to 'src/bun.js/builtins/cpp')
4 files changed, 247 insertions, 142 deletions
diff --git a/src/bun.js/builtins/cpp/ReadableStreamBuiltins.cpp b/src/bun.js/builtins/cpp/ReadableStreamBuiltins.cpp index 2af23348e..d60f09e7b 100644 --- a/src/bun.js/builtins/cpp/ReadableStreamBuiltins.cpp +++ b/src/bun.js/builtins/cpp/ReadableStreamBuiltins.cpp @@ -170,42 +170,80 @@ const char* const s_readableStreamReadableStreamToArrayCode = const JSC::ConstructAbility s_readableStreamReadableStreamToTextCodeConstructAbility = JSC::ConstructAbility::CannotConstruct; const JSC::ConstructorKind s_readableStreamReadableStreamToTextCodeConstructorKind = JSC::ConstructorKind::None; -const int s_readableStreamReadableStreamToTextCodeLength = 215; +const int s_readableStreamReadableStreamToTextCodeLength = 1080; static const JSC::Intrinsic s_readableStreamReadableStreamToTextCodeIntrinsic = JSC::NoIntrinsic; const char* const s_readableStreamReadableStreamToTextCode = "(function (stream) {\n" \ " \"use strict\";\n" \ "\n" \ " //\n" \ - " return globalThis.Bun.readableStreamToArrayBuffer(stream).@then(function(arrayBuffer) {\n" \ - " return new globalThis.TextDecoder().decode(arrayBuffer);\n" \ - " });\n" \ + " var underlyingSource = @getByIdDirectPrivate(stream, \"underlyingSource\");\n" \ + " if (underlyingSource !== @undefined) {\n" \ + " \n" \ + " const promise = @initializeTextStream.@call(stream, underlyingSource, @undefined);\n" \ + " var reader = stream.getReader();\n" \ + " return (async function() {\n" \ + " while (@getByIdDirectPrivate(stream, \"state\") === @streamReadable) {\n" \ + " var thisResult = await reader.read();\n" \ + " if (thisResult.done) {\n" \ + " break;\n" \ + " }\n" \ + " }\n" \ + "\n" \ + " try {\n" \ + " reader.releaseLock();\n" \ + " } catch(e) {\n" \ + " }\n" \ + " \n" \ + " return await promise;\n" \ + " })();\n" \ + " }\n" \ + "\n" \ + " //\n" \ + " var toArrayBuffer = globalThis.Bun.readableStreamToArrayBuffer(stream);\n" \ + " if (toArrayBuffer && @isPromise(toArrayBuffer)) {\n" \ + " return toArrayBuffer.@then(function(arrayBuffer) {\n" \ + " return new globalThis.TextDecoder().decode(arrayBuffer);\n" \ + " });\n" \ + " }\n" \ + "\n" \ + " return new globalThis.TextDecoder().decode(arrayBuffer);\n" \ "})\n" \ ; const JSC::ConstructAbility s_readableStreamReadableStreamToJSONCodeConstructAbility = JSC::ConstructAbility::CannotConstruct; const JSC::ConstructorKind s_readableStreamReadableStreamToJSONCodeConstructorKind = JSC::ConstructorKind::None; -const int s_readableStreamReadableStreamToJSONCodeLength = 238; +const int s_readableStreamReadableStreamToJSONCodeLength = 121; static const JSC::Intrinsic s_readableStreamReadableStreamToJSONCodeIntrinsic = JSC::NoIntrinsic; const char* const s_readableStreamReadableStreamToJSONCode = "(function (stream) {\n" \ " \"use strict\";\n" \ "\n" \ " //\n" \ - " return globalThis.Bun.readableStreamToArrayBuffer(stream).@then(function(arrayBuffer) {\n" \ - " return globalThis.JSON.parse(new globalThis.TextDecoder().decode(arrayBuffer));\n" \ - " });\n" \ + " return @readableStreamToText(stream).@then(globalThis.JSON.parse);\n" \ "})\n" \ ; const JSC::ConstructAbility s_readableStreamReadableStreamToBlobCodeConstructAbility = JSC::ConstructAbility::CannotConstruct; const JSC::ConstructorKind s_readableStreamReadableStreamToBlobCodeConstructorKind = JSC::ConstructorKind::None; -const int s_readableStreamReadableStreamToBlobCodeLength = 367; +const int s_readableStreamReadableStreamToBlobCodeLength = 834; static const JSC::Intrinsic s_readableStreamReadableStreamToBlobCodeIntrinsic = JSC::NoIntrinsic; const char* const s_readableStreamReadableStreamToBlobCode = "(function (stream) {\n" \ " \"use strict\";\n" \ "\n" \ + " var underlyingSource = @getByIdDirectPrivate(stream, \"underlyingSource\");\n" \ + " if (underlyingSource != @undefined) {\n" \ + " var toArrayBuffer = globalThis.Bun.readableStreamToArrayBuffer(stream);\n" \ + " if (toArrayBuffer && @isPromise(toArrayBuffer)) {\n" \ + " return toArrayBuffer.@then(function(arrayBuffer) {\n" \ + " return new globalThis.Blob([arrayBuffer]);\n" \ + " });\n" \ + " }\n" \ + "\n" \ + " return new globalThis.Blob([toArrayBuffer]);\n" \ + " }\n" \ + "\n" \ " \n" \ " const array = @readableStreamToArray(stream);\n" \ " if (array === null) {\n" \ diff --git a/src/bun.js/builtins/cpp/ReadableStreamInternalsBuiltins.cpp b/src/bun.js/builtins/cpp/ReadableStreamInternalsBuiltins.cpp index ca82613a7..982c9567d 100644 --- a/src/bun.js/builtins/cpp/ReadableStreamInternalsBuiltins.cpp +++ b/src/bun.js/builtins/cpp/ReadableStreamInternalsBuiltins.cpp @@ -764,7 +764,7 @@ const char* const s_readableStreamInternalsIsReadableStreamDefaultControllerCode const JSC::ConstructAbility s_readableStreamInternalsAssignToStreamCodeConstructAbility = JSC::ConstructAbility::CannotConstruct; const JSC::ConstructorKind s_readableStreamInternalsAssignToStreamCodeConstructorKind = JSC::ConstructorKind::None; -const int s_readableStreamInternalsAssignToStreamCodeLength = 2534; +const int s_readableStreamInternalsAssignToStreamCodeLength = 2607; static const JSC::Intrinsic s_readableStreamInternalsAssignToStreamCodeIntrinsic = JSC::NoIntrinsic; const char* const s_readableStreamInternalsAssignToStreamCode = "(function (stream, sink) {\n" \ @@ -786,12 +786,6 @@ const char* const s_readableStreamInternalsAssignToStreamCode = " \n" \ " }\n" \ " var pull = underlyingSource.pull;\n" \ - " \n" \ - " @putByIdDirectPrivate(stream, \"readableStreamController\", sink);\n" \ - " @putByIdDirectPrivate(stream, \"start\", @undefined);\n" \ - " @putByIdDirectPrivate(stream, \"underlyingSource\", @undefined);\n" \ - "\n" \ - " @startDirectStream.@call(sink, stream, pull, close);\n" \ "\n" \ " if (!pull) {\n" \ " close();\n" \ @@ -803,6 +797,12 @@ const char* const s_readableStreamInternalsAssignToStreamCode = " @throwTypeError(\"pull is not a function\");\n" \ " return;\n" \ " }\n" \ + " \n" \ + " @putByIdDirectPrivate(stream, \"readableStreamController\", sink);\n" \ + " @putByIdDirectPrivate(stream, \"start\", @undefined);\n" \ + " @putByIdDirectPrivate(stream, \"underlyingSource\", @undefined);\n" \ + "\n" \ + " @startDirectStream.@call(sink, stream, pull, close);\n" \ "\n" \ " //\n" \ " reader = stream.getReader();\n" \ @@ -816,45 +816,41 @@ const char* const s_readableStreamInternalsAssignToStreamCode = " \"use strict\";\n" \ "\n" \ " var didClose = false;\n" \ - "\n" \ - "\n" \ " try {\n" \ " var reader = stream.getReader();\n" \ - " reader.closed.then(() => {\n" \ - " if (!didClose && sink) {\n" \ - " didClose = true;\n" \ - " sink.end();\n" \ - " }\n" \ - " }, (e) => {\n" \ - " if (!didClose && sink) {\n" \ - " didClose = true;\n" \ - " sink.close(e);\n" \ - " }\n" \ - " });\n" \ "\n" \ " var many = reader.readMany();\n" \ " if (many && @isPromise(many)) {\n" \ " many = await many;\n" \ " }\n" \ - "\n" \ " if (many.done) {\n" \ " didClose = true;\n" \ " sink.end();\n" \ " return;\n" \ " }\n" \ "\n" \ - " sink.start();\n" \ + " \n" \ " var wroteCount = many.value.length;\n" \ + " sink.start();\n" \ " for (var i = 0, values = many.value, length = many.value.length; i < length; i++) {\n" \ " sink.write(values[i]);\n" \ " }\n" \ "\n" \ + " var streamState = @getByIdDirectPrivate(stream, \"state\");\n" \ + "\n" \ + "\n" \ + " if (streamState === @streamClosed) {\n" \ + " didClose = true;\n" \ + " return sink.end();\n" \ + " }\n" \ + "\n" \ " if (wroteCount > 0) {\n" \ " sink.drain();\n" \ " }\n" \ " \n" \ " while (true) {\n" \ " var result = await reader.read();\n" \ + "\n" \ " if (result.done) {\n" \ " didClose = true;\n" \ " return sink.end();\n" \ @@ -863,8 +859,16 @@ const char* const s_readableStreamInternalsAssignToStreamCode = " sink.write(result.value);\n" \ " }\n" \ " } catch (e) {\n" \ - " globalThis.console.error(e);\n" \ + " if (sink && !didClose) {\n" \ + " didClose = true;\n" \ + " try {\n" \ + " sink.close();\n" \ + " } catch(j) {\n" \ + " throw j;\n" \ + " }\n" \ + " }\n" \ "\n" \ + " throw e;\n" \ " }\n" \ " })();\n" \ "})\n" \ @@ -919,11 +923,11 @@ const char* const s_readableStreamInternalsHandleDirectStreamErrorRejectCode = "})\n" \ ; -const JSC::ConstructAbility s_readableStreamInternalsOnPullArrayBufferSinkCodeConstructAbility = JSC::ConstructAbility::CannotConstruct; -const JSC::ConstructorKind s_readableStreamInternalsOnPullArrayBufferSinkCodeConstructorKind = JSC::ConstructorKind::None; -const int s_readableStreamInternalsOnPullArrayBufferSinkCodeLength = 1701; -static const JSC::Intrinsic s_readableStreamInternalsOnPullArrayBufferSinkCodeIntrinsic = JSC::NoIntrinsic; -const char* const s_readableStreamInternalsOnPullArrayBufferSinkCode = +const JSC::ConstructAbility s_readableStreamInternalsOnPullDirectStreamCodeConstructAbility = JSC::ConstructAbility::CannotConstruct; +const JSC::ConstructorKind s_readableStreamInternalsOnPullDirectStreamCodeConstructorKind = JSC::ConstructorKind::None; +const int s_readableStreamInternalsOnPullDirectStreamCodeLength = 1701; +static const JSC::Intrinsic s_readableStreamInternalsOnPullDirectStreamCodeIntrinsic = JSC::NoIntrinsic; +const char* const s_readableStreamInternalsOnPullDirectStreamCode = "(function (controller)\n" \ "{\n" \ " \n" \ @@ -1143,9 +1147,158 @@ const char* const s_readableStreamInternalsOnDrainDirectStreamCode = "})\n" \ ; +const JSC::ConstructAbility s_readableStreamInternalsInitializeTextStreamCodeConstructAbility = JSC::ConstructAbility::CannotConstruct; +const JSC::ConstructorKind s_readableStreamInternalsInitializeTextStreamCodeConstructorKind = JSC::ConstructorKind::None; +const int s_readableStreamInternalsInitializeTextStreamCodeLength = 3832; +static const JSC::Intrinsic s_readableStreamInternalsInitializeTextStreamCodeIntrinsic = JSC::NoIntrinsic; +const char* const s_readableStreamInternalsInitializeTextStreamCode = + "(function (underlyingSource, highWaterMark)\n" \ + "{\n" \ + " \"use strict\";\n" \ + "\n" \ + " var sink;\n" \ + " var fifo = @createFIFO();\n" \ + " var hasString = false;\n" \ + " var hasBuffer = false;\n" \ + " var rope = '';\n" \ + " var estimatedLength = 0;\n" \ + " var closingPromise = @newPromise();\n" \ + " var calledDone = false;\n" \ + " var sink = {\n" \ + " start() {\n" \ + "\n" \ + " },\n" \ + " write(chunk) {\n" \ + " if (typeof chunk === 'string') {\n" \ + " if (chunk.length > 0) {\n" \ + " rope += chunk;\n" \ + " hasString = true;\n" \ + " estimatedLength += chunk.length;\n" \ + " //\n" \ + " }\n" \ + "\n" \ + " return chunk.length;\n" \ + " }\n" \ + "\n" \ + " if (!chunk || !@isObject(chunk) || !(@ArrayBuffer.@isView(chunk) || chunk instanceof @ArrayBuffer)) {\n" \ + " @throwTypeError(\"Expected text, ArrayBuffer or ArrayBufferView\");\n" \ + " }\n" \ + "\n" \ + " const byteLength = chunk.byteLength;\n" \ + " if (byteLength > 0) {\n" \ + " hasBuffer = true;\n" \ + " if (rope.length > 0) {\n" \ + " fifo.push(rope);\n" \ + " rope = '';\n" \ + " }\n" \ + " fifo.push(chunk);\n" \ + " }\n" \ + " estimatedLength += byteLength;\n" \ + " return byteLength;\n" \ + "\n" \ + " },\n" \ + "\n" \ + " drain() {\n" \ + " return 0;\n" \ + " },\n" \ + "\n" \ + " end() {\n" \ + " if (calledDone) {\n" \ + " return \"\";\n" \ + " }\n" \ + " return sink.fulfill();\n" \ + " },\n" \ + "\n" \ + " fulfill() {\n" \ + " calledDone = true;\n" \ + " const result = sink.finishInternal();\n" \ + " @fulfillPromise(closingPromise, result);\n" \ + " return result;\n" \ + " },\n" \ + "\n" \ + " finishInternal() {\n" \ + " if (!hasString && !hasBuffer) {\n" \ + " return \"\";\n" \ + " }\n" \ + "\n" \ + " if (hasString && !hasBuffer) {\n" \ + " return rope;\n" \ + " }\n" \ + "\n" \ + " if (hasBuffer && !hasString) {\n" \ + " return new globalThis.TextDecoder().decode(\n" \ + " globalThis.Bun.concatArrayBuffers(fifo.toArray(false)));\n" \ + " }\n" \ + "\n" \ + " //\n" \ + " var array = fifo.toArray(false);\n" \ + " \n" \ + " var arrayBufferSink = new globalThis.Bun.ArrayBufferSink();\n" \ + " arrayBufferSink.start({\n" \ + " highWaterMark: estimatedLength,\n" \ + " asUint8Array: true,\n" \ + " });\n" \ + " for (let item of array) {\n" \ + " arrayBufferSink.write(\n" \ + " item\n" \ + " );\n" \ + " }\n" \ + " if (rope.length > 0) {\n" \ + " arrayBufferSink.write(rope);\n" \ + " }\n" \ + "\n" \ + " return new globalThis.TextDecoder().decode(\n" \ + " arrayBufferSink.end()\n" \ + " );\n" \ + " },\n" \ + "\n" \ + " close() {\n" \ + " try {\n" \ + " if (!calledDone) {\n" \ + " calledDone = true;\n" \ + " sink.fulfill();\n" \ + " }\n" \ + " } catch(e) {\n" \ + "\n" \ + " } finally {\n" \ + " fifo.clear();\n" \ + " rope = '';\n" \ + " hasString = false;\n" \ + " hasBuffer = false;\n" \ + " estimatedLength = 0;\n" \ + " }\n" \ + " }\n" \ + " };\n" \ + "\n" \ + " var controller = {\n" \ + " @underlyingSource: underlyingSource,\n" \ + " @pull: @onPullDirectStream,\n" \ + " @controlledReadableStream: this,\n" \ + " @sink: sink,\n" \ + " close: @onCloseDirectStream,\n" \ + " write: sink.write,\n" \ + " error: @handleDirectStreamError,\n" \ + " end: @onCloseDirectStream,\n" \ + " @close: @onCloseDirectStream,\n" \ + " drain: @onDrainDirectStream,\n" \ + " _pendingRead: @undefined,\n" \ + " _deferClose: 0,\n" \ + " _deferDrain: 0,\n" \ + " _deferCloseReason: @undefined,\n" \ + " _handleError: @undefined,\n" \ + " };\n" \ + " \n" \ + " \n" \ + " @putByIdDirectPrivate(this, \"readableStreamController\", controller);\n" \ + " @putByIdDirectPrivate(this, \"underlyingSource\", @undefined);\n" \ + " @putByIdDirectPrivate(this, \"start\", @undefined);\n" \ + " return closingPromise;\n" \ + "})\n" \ +; + const JSC::ConstructAbility s_readableStreamInternalsInitializeArrayBufferStreamCodeConstructAbility = JSC::ConstructAbility::CannotConstruct; const JSC::ConstructorKind s_readableStreamInternalsInitializeArrayBufferStreamCodeConstructorKind = JSC::ConstructorKind::None; -const int s_readableStreamInternalsInitializeArrayBufferStreamCodeLength = 933; +const int s_readableStreamInternalsInitializeArrayBufferStreamCodeLength = 930; static const JSC::Intrinsic s_readableStreamInternalsInitializeArrayBufferStreamCodeIntrinsic = JSC::NoIntrinsic; const char* const s_readableStreamInternalsInitializeArrayBufferStreamCode = "(function (underlyingSource, highWaterMark)\n" \ @@ -1162,7 +1315,7 @@ const char* const s_readableStreamInternalsInitializeArrayBufferStreamCode = "\n" \ " var controller = {\n" \ " @underlyingSource: underlyingSource,\n" \ - " @pull: @onPullArrayBufferSink,\n" \ + " @pull: @onPullDirectStream,\n" \ " @controlledReadableStream: this,\n" \ " @sink: sink,\n" \ " close: @onCloseDirectStream,\n" \ diff --git a/src/bun.js/builtins/cpp/ReadableStreamInternalsBuiltins.h b/src/bun.js/builtins/cpp/ReadableStreamInternalsBuiltins.h index 7332fc125..aeb20ff86 100644 --- a/src/bun.js/builtins/cpp/ReadableStreamInternalsBuiltins.h +++ b/src/bun.js/builtins/cpp/ReadableStreamInternalsBuiltins.h @@ -159,10 +159,10 @@ extern const char* const s_readableStreamInternalsHandleDirectStreamErrorRejectC extern const int s_readableStreamInternalsHandleDirectStreamErrorRejectCodeLength; extern const JSC::ConstructAbility s_readableStreamInternalsHandleDirectStreamErrorRejectCodeConstructAbility; extern const JSC::ConstructorKind s_readableStreamInternalsHandleDirectStreamErrorRejectCodeConstructorKind; -extern const char* const s_readableStreamInternalsOnPullArrayBufferSinkCode; -extern const int s_readableStreamInternalsOnPullArrayBufferSinkCodeLength; -extern const JSC::ConstructAbility s_readableStreamInternalsOnPullArrayBufferSinkCodeConstructAbility; -extern const JSC::ConstructorKind s_readableStreamInternalsOnPullArrayBufferSinkCodeConstructorKind; +extern const char* const s_readableStreamInternalsOnPullDirectStreamCode; +extern const int s_readableStreamInternalsOnPullDirectStreamCodeLength; +extern const JSC::ConstructAbility s_readableStreamInternalsOnPullDirectStreamCodeConstructAbility; +extern const JSC::ConstructorKind s_readableStreamInternalsOnPullDirectStreamCodeConstructorKind; extern const char* const s_readableStreamInternalsNoopDoneFunctionCode; extern const int s_readableStreamInternalsNoopDoneFunctionCodeLength; extern const JSC::ConstructAbility s_readableStreamInternalsNoopDoneFunctionCodeConstructAbility; @@ -179,6 +179,10 @@ extern const char* const s_readableStreamInternalsOnDrainDirectStreamCode; extern const int s_readableStreamInternalsOnDrainDirectStreamCodeLength; extern const JSC::ConstructAbility s_readableStreamInternalsOnDrainDirectStreamCodeConstructAbility; extern const JSC::ConstructorKind s_readableStreamInternalsOnDrainDirectStreamCodeConstructorKind; +extern const char* const s_readableStreamInternalsInitializeTextStreamCode; +extern const int s_readableStreamInternalsInitializeTextStreamCodeLength; +extern const JSC::ConstructAbility s_readableStreamInternalsInitializeTextStreamCodeConstructAbility; +extern const JSC::ConstructorKind s_readableStreamInternalsInitializeTextStreamCodeConstructorKind; extern const char* const s_readableStreamInternalsInitializeArrayBufferStreamCode; extern const int s_readableStreamInternalsInitializeArrayBufferStreamCodeLength; extern const JSC::ConstructAbility s_readableStreamInternalsInitializeArrayBufferStreamCodeConstructAbility; @@ -289,11 +293,12 @@ extern const JSC::ConstructorKind s_readableStreamInternalsLazyLoadStreamCodeCon macro(assignToStream, readableStreamInternalsAssignToStream, 2) \ macro(handleDirectStreamError, readableStreamInternalsHandleDirectStreamError, 1) \ macro(handleDirectStreamErrorReject, readableStreamInternalsHandleDirectStreamErrorReject, 1) \ - macro(onPullArrayBufferSink, readableStreamInternalsOnPullArrayBufferSink, 1) \ + macro(onPullDirectStream, readableStreamInternalsOnPullDirectStream, 1) \ macro(noopDoneFunction, readableStreamInternalsNoopDoneFunction, 0) \ macro(onReadableStreamDirectControllerClosed, readableStreamInternalsOnReadableStreamDirectControllerClosed, 1) \ macro(onCloseDirectStream, readableStreamInternalsOnCloseDirectStream, 1) \ macro(onDrainDirectStream, readableStreamInternalsOnDrainDirectStream, 0) \ + macro(initializeTextStream, readableStreamInternalsInitializeTextStream, 2) \ macro(initializeArrayBufferStream, readableStreamInternalsInitializeArrayBufferStream, 2) \ macro(readableStreamError, readableStreamInternalsReadableStreamError, 2) \ macro(readableStreamDefaultControllerShouldCallPull, readableStreamInternalsReadableStreamDefaultControllerShouldCallPull, 1) \ @@ -343,11 +348,12 @@ extern const JSC::ConstructorKind s_readableStreamInternalsLazyLoadStreamCodeCon #define WEBCORE_BUILTIN_READABLESTREAMINTERNALS_ASSIGNTOSTREAM 1 #define WEBCORE_BUILTIN_READABLESTREAMINTERNALS_HANDLEDIRECTSTREAMERROR 1 #define WEBCORE_BUILTIN_READABLESTREAMINTERNALS_HANDLEDIRECTSTREAMERRORREJECT 1 -#define WEBCORE_BUILTIN_READABLESTREAMINTERNALS_ONPULLARRAYBUFFERSINK 1 +#define WEBCORE_BUILTIN_READABLESTREAMINTERNALS_ONPULLDIRECTSTREAM 1 #define WEBCORE_BUILTIN_READABLESTREAMINTERNALS_NOOPDONEFUNCTION 1 #define WEBCORE_BUILTIN_READABLESTREAMINTERNALS_ONREADABLESTREAMDIRECTCONTROLLERCLOSED 1 #define WEBCORE_BUILTIN_READABLESTREAMINTERNALS_ONCLOSEDIRECTSTREAM 1 #define WEBCORE_BUILTIN_READABLESTREAMINTERNALS_ONDRAINDIRECTSTREAM 1 +#define WEBCORE_BUILTIN_READABLESTREAMINTERNALS_INITIALIZETEXTSTREAM 1 #define WEBCORE_BUILTIN_READABLESTREAMINTERNALS_INITIALIZEARRAYBUFFERSTREAM 1 #define WEBCORE_BUILTIN_READABLESTREAMINTERNALS_READABLESTREAMERROR 1 #define WEBCORE_BUILTIN_READABLESTREAMINTERNALS_READABLESTREAMDEFAULTCONTROLLERSHOULDCALLPULL 1 @@ -398,11 +404,12 @@ extern const JSC::ConstructorKind s_readableStreamInternalsLazyLoadStreamCodeCon macro(readableStreamInternalsAssignToStreamCode, assignToStream, ASCIILiteral(), s_readableStreamInternalsAssignToStreamCodeLength) \ macro(readableStreamInternalsHandleDirectStreamErrorCode, handleDirectStreamError, ASCIILiteral(), s_readableStreamInternalsHandleDirectStreamErrorCodeLength) \ macro(readableStreamInternalsHandleDirectStreamErrorRejectCode, handleDirectStreamErrorReject, ASCIILiteral(), s_readableStreamInternalsHandleDirectStreamErrorRejectCodeLength) \ - macro(readableStreamInternalsOnPullArrayBufferSinkCode, onPullArrayBufferSink, ASCIILiteral(), s_readableStreamInternalsOnPullArrayBufferSinkCodeLength) \ + macro(readableStreamInternalsOnPullDirectStreamCode, onPullDirectStream, ASCIILiteral(), s_readableStreamInternalsOnPullDirectStreamCodeLength) \ macro(readableStreamInternalsNoopDoneFunctionCode, noopDoneFunction, ASCIILiteral(), s_readableStreamInternalsNoopDoneFunctionCodeLength) \ macro(readableStreamInternalsOnReadableStreamDirectControllerClosedCode, onReadableStreamDirectControllerClosed, ASCIILiteral(), s_readableStreamInternalsOnReadableStreamDirectControllerClosedCodeLength) \ macro(readableStreamInternalsOnCloseDirectStreamCode, onCloseDirectStream, ASCIILiteral(), s_readableStreamInternalsOnCloseDirectStreamCodeLength) \ macro(readableStreamInternalsOnDrainDirectStreamCode, onDrainDirectStream, ASCIILiteral(), s_readableStreamInternalsOnDrainDirectStreamCodeLength) \ + macro(readableStreamInternalsInitializeTextStreamCode, initializeTextStream, ASCIILiteral(), s_readableStreamInternalsInitializeTextStreamCodeLength) \ macro(readableStreamInternalsInitializeArrayBufferStreamCode, initializeArrayBufferStream, ASCIILiteral(), s_readableStreamInternalsInitializeArrayBufferStreamCodeLength) \ macro(readableStreamInternalsReadableStreamErrorCode, readableStreamError, ASCIILiteral(), s_readableStreamInternalsReadableStreamErrorCodeLength) \ macro(readableStreamInternalsReadableStreamDefaultControllerShouldCallPullCode, readableStreamDefaultControllerShouldCallPull, ASCIILiteral(), s_readableStreamInternalsReadableStreamDefaultControllerShouldCallPullCodeLength) \ @@ -431,6 +438,7 @@ extern const JSC::ConstructorKind s_readableStreamInternalsLazyLoadStreamCodeCon macro(handleDirectStreamError) \ macro(handleDirectStreamErrorReject) \ macro(initializeArrayBufferStream) \ + macro(initializeTextStream) \ macro(isReadableStream) \ macro(isReadableStreamDefaultController) \ macro(isReadableStreamDefaultReader) \ @@ -440,7 +448,7 @@ extern const JSC::ConstructorKind s_readableStreamInternalsLazyLoadStreamCodeCon macro(noopDoneFunction) \ macro(onCloseDirectStream) \ macro(onDrainDirectStream) \ - macro(onPullArrayBufferSink) \ + macro(onPullDirectStream) \ macro(onReadableStreamDirectControllerClosed) \ macro(pipeToClosingMustBePropagatedBackward) \ macro(pipeToClosingMustBePropagatedForward) \ diff --git a/src/bun.js/builtins/cpp/WebCoreJSBuiltinInternals.h b/src/bun.js/builtins/cpp/WebCoreJSBuiltinInternals.h index 57b4f2936..f4fca9b94 100644 --- a/src/bun.js/builtins/cpp/WebCoreJSBuiltinInternals.h +++ b/src/bun.js/builtins/cpp/WebCoreJSBuiltinInternals.h @@ -1,98 +1,4 @@ -//clang-format off -namespace Zig { class GlobalObject; } -namespace Zig { class GlobalObject; } -namespace Zig { class GlobalObject; } -namespace Zig { class GlobalObject; } -namespace Zig { class GlobalObject; } -namespace Zig { class GlobalObject; } -namespace Zig { class GlobalObject; } -namespace Zig { class GlobalObject; } -namespace Zig { class GlobalObject; } -namespace Zig { class GlobalObject; } -namespace Zig { class GlobalObject; } -namespace Zig { class GlobalObject; } -namespace Zig { class GlobalObject; } -namespace Zig { class GlobalObject; } -namespace Zig { class GlobalObject; } -namespace Zig { class GlobalObject; } -namespace Zig { class GlobalObject; } -namespace Zig { class GlobalObject; } -namespace Zig { class GlobalObject; } -namespace Zig { class GlobalObject; } -namespace Zig { class GlobalObject; } -namespace Zig { class GlobalObject; } -namespace Zig { class GlobalObject; } -namespace Zig { class GlobalObject; } -namespace Zig { class GlobalObject; } -namespace Zig { class GlobalObject; } -namespace Zig { class GlobalObject; } -namespace Zig { class GlobalObject; } -namespace Zig { class GlobalObject; } -namespace Zig { class GlobalObject; } -namespace Zig { class GlobalObject; } -namespace Zig { class GlobalObject; } -namespace Zig { class GlobalObject; } -namespace Zig { class GlobalObject; } -namespace Zig { class GlobalObject; } -namespace Zig { class GlobalObject; } -namespace Zig { class GlobalObject; } -namespace Zig { class GlobalObject; } -namespace Zig { class GlobalObject; } -namespace Zig { class GlobalObject; } -namespace Zig { class GlobalObject; } -namespace Zig { class GlobalObject; } -namespace Zig { class GlobalObject; } -namespace Zig { class GlobalObject; } -namespace Zig { class GlobalObject; } -namespace Zig { class GlobalObject; } -namespace Zig { class GlobalObject; } -namespace Zig { class GlobalObject; } -namespace Zig { class GlobalObject; } -namespace Zig { class GlobalObject; } -namespace Zig { class GlobalObject; } -namespace Zig { class GlobalObject; } -namespace Zig { class GlobalObject; } -namespace Zig { class GlobalObject; } -namespace Zig { class GlobalObject; } -namespace Zig { class GlobalObject; } -namespace Zig { class GlobalObject; } -namespace Zig { class GlobalObject; } -namespace Zig { class GlobalObject; } -namespace Zig { class GlobalObject; } -namespace Zig { class GlobalObject; } -namespace Zig { class GlobalObject; } -namespace Zig { class GlobalObject; } -namespace Zig { class GlobalObject; } -namespace Zig { class GlobalObject; } -namespace Zig { class GlobalObject; } -namespace Zig { class GlobalObject; } -namespace Zig { class GlobalObject; } -namespace Zig { class GlobalObject; } -namespace Zig { class GlobalObject; } -namespace Zig { class GlobalObject; } -namespace Zig { class GlobalObject; } -namespace Zig { class GlobalObject; } -namespace Zig { class GlobalObject; } -namespace Zig { class GlobalObject; } -namespace Zig { class GlobalObject; } -namespace Zig { class GlobalObject; } -namespace Zig { class GlobalObject; } -namespace Zig { class GlobalObject; } -namespace Zig { class GlobalObject; } -namespace Zig { class GlobalObject; } -namespace Zig { class GlobalObject; } -namespace Zig { class GlobalObject; } -namespace Zig { class GlobalObject; } -namespace Zig { class GlobalObject; } -namespace Zig { class GlobalObject; } -namespace Zig { class GlobalObject; } -namespace Zig { class GlobalObject; } -namespace Zig { class GlobalObject; } -namespace Zig { class GlobalObject; } -namespace Zig { class GlobalObject; } -namespace Zig { class GlobalObject; } -namespace Zig { class GlobalObject; } -namespace Zig { class GlobalObject; } +// clang-format off namespace Zig { class GlobalObject; } /* * Copyright (c) 2015 Igalia |