1 | /* |
2 | * Copyright (c) 2016 Apple Inc. All rights reserved. |
3 | * Copyright (c) 2016 Canon Inc. All rights reserved. |
4 | * |
5 | * Redistribution and use in source and binary forms, with or without |
6 | * modification, are permitted provided that the following conditions |
7 | * are met: |
8 | * 1. Redistributions of source code must retain the above copyright |
9 | * notice, this list of conditions and the following disclaimer. |
10 | * 2. Redistributions in binary form must reproduce the above copyright |
11 | * notice, this list of conditions and the following disclaimer in the |
12 | * documentation and/or other materials provided with the distribution. |
13 | * |
14 | * THIS SOFTWARE IS PROVIDED BY APPLE INC. AND ITS CONTRIBUTORS ``AS IS'' |
15 | * AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, |
16 | * THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR |
17 | * PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL APPLE INC. OR ITS CONTRIBUTORS |
18 | * BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR |
19 | * CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF |
20 | * SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS |
21 | * INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN |
22 | * CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) |
23 | * ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF |
24 | * THE POSSIBILITY OF SUCH DAMAGE. |
25 | * |
26 | */ |
27 | |
28 | // DO NOT EDIT THIS FILE. It is automatically generated from JavaScript files for |
29 | // builtins by the script: Source/JavaScriptCore/Scripts/generate-js-builtins.py |
30 | |
31 | #pragma once |
32 | |
33 | #if ENABLE(STREAMS_API) |
34 | |
35 | #include <JavaScriptCore/BuiltinUtils.h> |
36 | #include <JavaScriptCore/Identifier.h> |
37 | #include <JavaScriptCore/JSFunction.h> |
38 | #include <JavaScriptCore/UnlinkedFunctionExecutable.h> |
39 | |
40 | namespace JSC { |
41 | class FunctionExecutable; |
42 | } |
43 | |
44 | namespace WebCore { |
45 | |
46 | /* ReadableByteStreamInternals */ |
47 | extern const char* const s_readableByteStreamInternalsPrivateInitializeReadableByteStreamControllerCode; |
48 | extern const int s_readableByteStreamInternalsPrivateInitializeReadableByteStreamControllerCodeLength; |
49 | extern const JSC::ConstructAbility s_readableByteStreamInternalsPrivateInitializeReadableByteStreamControllerCodeConstructAbility; |
50 | extern const char* const s_readableByteStreamInternalsPrivateInitializeReadableStreamBYOBRequestCode; |
51 | extern const int s_readableByteStreamInternalsPrivateInitializeReadableStreamBYOBRequestCodeLength; |
52 | extern const JSC::ConstructAbility s_readableByteStreamInternalsPrivateInitializeReadableStreamBYOBRequestCodeConstructAbility; |
53 | extern const char* const s_readableByteStreamInternalsIsReadableByteStreamControllerCode; |
54 | extern const int s_readableByteStreamInternalsIsReadableByteStreamControllerCodeLength; |
55 | extern const JSC::ConstructAbility s_readableByteStreamInternalsIsReadableByteStreamControllerCodeConstructAbility; |
56 | extern const char* const s_readableByteStreamInternalsIsReadableStreamBYOBRequestCode; |
57 | extern const int s_readableByteStreamInternalsIsReadableStreamBYOBRequestCodeLength; |
58 | extern const JSC::ConstructAbility s_readableByteStreamInternalsIsReadableStreamBYOBRequestCodeConstructAbility; |
59 | extern const char* const s_readableByteStreamInternalsIsReadableStreamBYOBReaderCode; |
60 | extern const int s_readableByteStreamInternalsIsReadableStreamBYOBReaderCodeLength; |
61 | extern const JSC::ConstructAbility s_readableByteStreamInternalsIsReadableStreamBYOBReaderCodeConstructAbility; |
62 | extern const char* const s_readableByteStreamInternalsReadableByteStreamControllerCancelCode; |
63 | extern const int s_readableByteStreamInternalsReadableByteStreamControllerCancelCodeLength; |
64 | extern const JSC::ConstructAbility s_readableByteStreamInternalsReadableByteStreamControllerCancelCodeConstructAbility; |
65 | extern const char* const s_readableByteStreamInternalsReadableByteStreamControllerErrorCode; |
66 | extern const int s_readableByteStreamInternalsReadableByteStreamControllerErrorCodeLength; |
67 | extern const JSC::ConstructAbility s_readableByteStreamInternalsReadableByteStreamControllerErrorCodeConstructAbility; |
68 | extern const char* const s_readableByteStreamInternalsReadableByteStreamControllerCloseCode; |
69 | extern const int s_readableByteStreamInternalsReadableByteStreamControllerCloseCodeLength; |
70 | extern const JSC::ConstructAbility s_readableByteStreamInternalsReadableByteStreamControllerCloseCodeConstructAbility; |
71 | extern const char* const s_readableByteStreamInternalsReadableByteStreamControllerClearPendingPullIntosCode; |
72 | extern const int s_readableByteStreamInternalsReadableByteStreamControllerClearPendingPullIntosCodeLength; |
73 | extern const JSC::ConstructAbility s_readableByteStreamInternalsReadableByteStreamControllerClearPendingPullIntosCodeConstructAbility; |
74 | extern const char* const s_readableByteStreamInternalsReadableByteStreamControllerGetDesiredSizeCode; |
75 | extern const int s_readableByteStreamInternalsReadableByteStreamControllerGetDesiredSizeCodeLength; |
76 | extern const JSC::ConstructAbility s_readableByteStreamInternalsReadableByteStreamControllerGetDesiredSizeCodeConstructAbility; |
77 | extern const char* const s_readableByteStreamInternalsReadableStreamHasBYOBReaderCode; |
78 | extern const int s_readableByteStreamInternalsReadableStreamHasBYOBReaderCodeLength; |
79 | extern const JSC::ConstructAbility s_readableByteStreamInternalsReadableStreamHasBYOBReaderCodeConstructAbility; |
80 | extern const char* const s_readableByteStreamInternalsReadableStreamHasDefaultReaderCode; |
81 | extern const int s_readableByteStreamInternalsReadableStreamHasDefaultReaderCodeLength; |
82 | extern const JSC::ConstructAbility s_readableByteStreamInternalsReadableStreamHasDefaultReaderCodeConstructAbility; |
83 | extern const char* const s_readableByteStreamInternalsReadableByteStreamControllerHandleQueueDrainCode; |
84 | extern const int s_readableByteStreamInternalsReadableByteStreamControllerHandleQueueDrainCodeLength; |
85 | extern const JSC::ConstructAbility s_readableByteStreamInternalsReadableByteStreamControllerHandleQueueDrainCodeConstructAbility; |
86 | extern const char* const s_readableByteStreamInternalsReadableByteStreamControllerPullCode; |
87 | extern const int s_readableByteStreamInternalsReadableByteStreamControllerPullCodeLength; |
88 | extern const JSC::ConstructAbility s_readableByteStreamInternalsReadableByteStreamControllerPullCodeConstructAbility; |
89 | extern const char* const s_readableByteStreamInternalsReadableByteStreamControllerShouldCallPullCode; |
90 | extern const int s_readableByteStreamInternalsReadableByteStreamControllerShouldCallPullCodeLength; |
91 | extern const JSC::ConstructAbility s_readableByteStreamInternalsReadableByteStreamControllerShouldCallPullCodeConstructAbility; |
92 | extern const char* const s_readableByteStreamInternalsReadableByteStreamControllerCallPullIfNeededCode; |
93 | extern const int s_readableByteStreamInternalsReadableByteStreamControllerCallPullIfNeededCodeLength; |
94 | extern const JSC::ConstructAbility s_readableByteStreamInternalsReadableByteStreamControllerCallPullIfNeededCodeConstructAbility; |
95 | extern const char* const s_readableByteStreamInternalsTransferBufferToCurrentRealmCode; |
96 | extern const int s_readableByteStreamInternalsTransferBufferToCurrentRealmCodeLength; |
97 | extern const JSC::ConstructAbility s_readableByteStreamInternalsTransferBufferToCurrentRealmCodeConstructAbility; |
98 | extern const char* const s_readableByteStreamInternalsReadableByteStreamControllerEnqueueCode; |
99 | extern const int s_readableByteStreamInternalsReadableByteStreamControllerEnqueueCodeLength; |
100 | extern const JSC::ConstructAbility s_readableByteStreamInternalsReadableByteStreamControllerEnqueueCodeConstructAbility; |
101 | extern const char* const s_readableByteStreamInternalsReadableByteStreamControllerEnqueueChunkCode; |
102 | extern const int s_readableByteStreamInternalsReadableByteStreamControllerEnqueueChunkCodeLength; |
103 | extern const JSC::ConstructAbility s_readableByteStreamInternalsReadableByteStreamControllerEnqueueChunkCodeConstructAbility; |
104 | extern const char* const s_readableByteStreamInternalsReadableByteStreamControllerRespondWithNewViewCode; |
105 | extern const int s_readableByteStreamInternalsReadableByteStreamControllerRespondWithNewViewCodeLength; |
106 | extern const JSC::ConstructAbility s_readableByteStreamInternalsReadableByteStreamControllerRespondWithNewViewCodeConstructAbility; |
107 | extern const char* const s_readableByteStreamInternalsReadableByteStreamControllerRespondCode; |
108 | extern const int s_readableByteStreamInternalsReadableByteStreamControllerRespondCodeLength; |
109 | extern const JSC::ConstructAbility s_readableByteStreamInternalsReadableByteStreamControllerRespondCodeConstructAbility; |
110 | extern const char* const s_readableByteStreamInternalsReadableByteStreamControllerRespondInternalCode; |
111 | extern const int s_readableByteStreamInternalsReadableByteStreamControllerRespondInternalCodeLength; |
112 | extern const JSC::ConstructAbility s_readableByteStreamInternalsReadableByteStreamControllerRespondInternalCodeConstructAbility; |
113 | extern const char* const s_readableByteStreamInternalsReadableByteStreamControllerRespondInReadableStateCode; |
114 | extern const int s_readableByteStreamInternalsReadableByteStreamControllerRespondInReadableStateCodeLength; |
115 | extern const JSC::ConstructAbility s_readableByteStreamInternalsReadableByteStreamControllerRespondInReadableStateCodeConstructAbility; |
116 | extern const char* const s_readableByteStreamInternalsReadableByteStreamControllerRespondInClosedStateCode; |
117 | extern const int s_readableByteStreamInternalsReadableByteStreamControllerRespondInClosedStateCodeLength; |
118 | extern const JSC::ConstructAbility s_readableByteStreamInternalsReadableByteStreamControllerRespondInClosedStateCodeConstructAbility; |
119 | extern const char* const s_readableByteStreamInternalsReadableByteStreamControllerProcessPullDescriptorsCode; |
120 | extern const int s_readableByteStreamInternalsReadableByteStreamControllerProcessPullDescriptorsCodeLength; |
121 | extern const JSC::ConstructAbility s_readableByteStreamInternalsReadableByteStreamControllerProcessPullDescriptorsCodeConstructAbility; |
122 | extern const char* const s_readableByteStreamInternalsReadableByteStreamControllerFillDescriptorFromQueueCode; |
123 | extern const int s_readableByteStreamInternalsReadableByteStreamControllerFillDescriptorFromQueueCodeLength; |
124 | extern const JSC::ConstructAbility s_readableByteStreamInternalsReadableByteStreamControllerFillDescriptorFromQueueCodeConstructAbility; |
125 | extern const char* const s_readableByteStreamInternalsReadableByteStreamControllerShiftPendingDescriptorCode; |
126 | extern const int s_readableByteStreamInternalsReadableByteStreamControllerShiftPendingDescriptorCodeLength; |
127 | extern const JSC::ConstructAbility s_readableByteStreamInternalsReadableByteStreamControllerShiftPendingDescriptorCodeConstructAbility; |
128 | extern const char* const s_readableByteStreamInternalsReadableByteStreamControllerInvalidateBYOBRequestCode; |
129 | extern const int s_readableByteStreamInternalsReadableByteStreamControllerInvalidateBYOBRequestCodeLength; |
130 | extern const JSC::ConstructAbility s_readableByteStreamInternalsReadableByteStreamControllerInvalidateBYOBRequestCodeConstructAbility; |
131 | extern const char* const s_readableByteStreamInternalsReadableByteStreamControllerCommitDescriptorCode; |
132 | extern const int s_readableByteStreamInternalsReadableByteStreamControllerCommitDescriptorCodeLength; |
133 | extern const JSC::ConstructAbility s_readableByteStreamInternalsReadableByteStreamControllerCommitDescriptorCodeConstructAbility; |
134 | extern const char* const s_readableByteStreamInternalsReadableByteStreamControllerConvertDescriptorCode; |
135 | extern const int s_readableByteStreamInternalsReadableByteStreamControllerConvertDescriptorCodeLength; |
136 | extern const JSC::ConstructAbility s_readableByteStreamInternalsReadableByteStreamControllerConvertDescriptorCodeConstructAbility; |
137 | extern const char* const s_readableByteStreamInternalsReadableStreamFulfillReadIntoRequestCode; |
138 | extern const int s_readableByteStreamInternalsReadableStreamFulfillReadIntoRequestCodeLength; |
139 | extern const JSC::ConstructAbility s_readableByteStreamInternalsReadableStreamFulfillReadIntoRequestCodeConstructAbility; |
140 | extern const char* const s_readableByteStreamInternalsReadableStreamBYOBReaderReadCode; |
141 | extern const int s_readableByteStreamInternalsReadableStreamBYOBReaderReadCodeLength; |
142 | extern const JSC::ConstructAbility s_readableByteStreamInternalsReadableStreamBYOBReaderReadCodeConstructAbility; |
143 | extern const char* const s_readableByteStreamInternalsReadableByteStreamControllerPullIntoCode; |
144 | extern const int s_readableByteStreamInternalsReadableByteStreamControllerPullIntoCodeLength; |
145 | extern const JSC::ConstructAbility s_readableByteStreamInternalsReadableByteStreamControllerPullIntoCodeConstructAbility; |
146 | extern const char* const s_readableByteStreamInternalsReadableStreamAddReadIntoRequestCode; |
147 | extern const int s_readableByteStreamInternalsReadableStreamAddReadIntoRequestCodeLength; |
148 | extern const JSC::ConstructAbility s_readableByteStreamInternalsReadableStreamAddReadIntoRequestCodeConstructAbility; |
149 | |
150 | #define WEBCORE_FOREACH_READABLEBYTESTREAMINTERNALS_BUILTIN_DATA(macro) \ |
151 | macro(privateInitializeReadableByteStreamController, readableByteStreamInternalsPrivateInitializeReadableByteStreamController, 3) \ |
152 | macro(privateInitializeReadableStreamBYOBRequest, readableByteStreamInternalsPrivateInitializeReadableStreamBYOBRequest, 2) \ |
153 | macro(isReadableByteStreamController, readableByteStreamInternalsIsReadableByteStreamController, 1) \ |
154 | macro(isReadableStreamBYOBRequest, readableByteStreamInternalsIsReadableStreamBYOBRequest, 1) \ |
155 | macro(isReadableStreamBYOBReader, readableByteStreamInternalsIsReadableStreamBYOBReader, 1) \ |
156 | macro(readableByteStreamControllerCancel, readableByteStreamInternalsReadableByteStreamControllerCancel, 2) \ |
157 | macro(readableByteStreamControllerError, readableByteStreamInternalsReadableByteStreamControllerError, 2) \ |
158 | macro(readableByteStreamControllerClose, readableByteStreamInternalsReadableByteStreamControllerClose, 1) \ |
159 | macro(readableByteStreamControllerClearPendingPullIntos, readableByteStreamInternalsReadableByteStreamControllerClearPendingPullIntos, 1) \ |
160 | macro(readableByteStreamControllerGetDesiredSize, readableByteStreamInternalsReadableByteStreamControllerGetDesiredSize, 1) \ |
161 | macro(readableStreamHasBYOBReader, readableByteStreamInternalsReadableStreamHasBYOBReader, 1) \ |
162 | macro(readableStreamHasDefaultReader, readableByteStreamInternalsReadableStreamHasDefaultReader, 1) \ |
163 | macro(readableByteStreamControllerHandleQueueDrain, readableByteStreamInternalsReadableByteStreamControllerHandleQueueDrain, 1) \ |
164 | macro(readableByteStreamControllerPull, readableByteStreamInternalsReadableByteStreamControllerPull, 1) \ |
165 | macro(readableByteStreamControllerShouldCallPull, readableByteStreamInternalsReadableByteStreamControllerShouldCallPull, 1) \ |
166 | macro(readableByteStreamControllerCallPullIfNeeded, readableByteStreamInternalsReadableByteStreamControllerCallPullIfNeeded, 1) \ |
167 | macro(transferBufferToCurrentRealm, readableByteStreamInternalsTransferBufferToCurrentRealm, 1) \ |
168 | macro(readableByteStreamControllerEnqueue, readableByteStreamInternalsReadableByteStreamControllerEnqueue, 2) \ |
169 | macro(readableByteStreamControllerEnqueueChunk, readableByteStreamInternalsReadableByteStreamControllerEnqueueChunk, 4) \ |
170 | macro(readableByteStreamControllerRespondWithNewView, readableByteStreamInternalsReadableByteStreamControllerRespondWithNewView, 2) \ |
171 | macro(readableByteStreamControllerRespond, readableByteStreamInternalsReadableByteStreamControllerRespond, 2) \ |
172 | macro(readableByteStreamControllerRespondInternal, readableByteStreamInternalsReadableByteStreamControllerRespondInternal, 2) \ |
173 | macro(readableByteStreamControllerRespondInReadableState, readableByteStreamInternalsReadableByteStreamControllerRespondInReadableState, 3) \ |
174 | macro(readableByteStreamControllerRespondInClosedState, readableByteStreamInternalsReadableByteStreamControllerRespondInClosedState, 2) \ |
175 | macro(readableByteStreamControllerProcessPullDescriptors, readableByteStreamInternalsReadableByteStreamControllerProcessPullDescriptors, 1) \ |
176 | macro(readableByteStreamControllerFillDescriptorFromQueue, readableByteStreamInternalsReadableByteStreamControllerFillDescriptorFromQueue, 2) \ |
177 | macro(readableByteStreamControllerShiftPendingDescriptor, readableByteStreamInternalsReadableByteStreamControllerShiftPendingDescriptor, 1) \ |
178 | macro(readableByteStreamControllerInvalidateBYOBRequest, readableByteStreamInternalsReadableByteStreamControllerInvalidateBYOBRequest, 1) \ |
179 | macro(readableByteStreamControllerCommitDescriptor, readableByteStreamInternalsReadableByteStreamControllerCommitDescriptor, 2) \ |
180 | macro(readableByteStreamControllerConvertDescriptor, readableByteStreamInternalsReadableByteStreamControllerConvertDescriptor, 1) \ |
181 | macro(readableStreamFulfillReadIntoRequest, readableByteStreamInternalsReadableStreamFulfillReadIntoRequest, 3) \ |
182 | macro(readableStreamBYOBReaderRead, readableByteStreamInternalsReadableStreamBYOBReaderRead, 2) \ |
183 | macro(readableByteStreamControllerPullInto, readableByteStreamInternalsReadableByteStreamControllerPullInto, 2) \ |
184 | macro(readableStreamAddReadIntoRequest, readableByteStreamInternalsReadableStreamAddReadIntoRequest, 1) \ |
185 | |
186 | #define WEBCORE_BUILTIN_READABLEBYTESTREAMINTERNALS_PRIVATEINITIALIZEREADABLEBYTESTREAMCONTROLLER 1 |
187 | #define WEBCORE_BUILTIN_READABLEBYTESTREAMINTERNALS_PRIVATEINITIALIZEREADABLESTREAMBYOBREQUEST 1 |
188 | #define WEBCORE_BUILTIN_READABLEBYTESTREAMINTERNALS_ISREADABLEBYTESTREAMCONTROLLER 1 |
189 | #define WEBCORE_BUILTIN_READABLEBYTESTREAMINTERNALS_ISREADABLESTREAMBYOBREQUEST 1 |
190 | #define WEBCORE_BUILTIN_READABLEBYTESTREAMINTERNALS_ISREADABLESTREAMBYOBREADER 1 |
191 | #define WEBCORE_BUILTIN_READABLEBYTESTREAMINTERNALS_READABLEBYTESTREAMCONTROLLERCANCEL 1 |
192 | #define WEBCORE_BUILTIN_READABLEBYTESTREAMINTERNALS_READABLEBYTESTREAMCONTROLLERERROR 1 |
193 | #define WEBCORE_BUILTIN_READABLEBYTESTREAMINTERNALS_READABLEBYTESTREAMCONTROLLERCLOSE 1 |
194 | #define WEBCORE_BUILTIN_READABLEBYTESTREAMINTERNALS_READABLEBYTESTREAMCONTROLLERCLEARPENDINGPULLINTOS 1 |
195 | #define WEBCORE_BUILTIN_READABLEBYTESTREAMINTERNALS_READABLEBYTESTREAMCONTROLLERGETDESIREDSIZE 1 |
196 | #define WEBCORE_BUILTIN_READABLEBYTESTREAMINTERNALS_READABLESTREAMHASBYOBREADER 1 |
197 | #define WEBCORE_BUILTIN_READABLEBYTESTREAMINTERNALS_READABLESTREAMHASDEFAULTREADER 1 |
198 | #define WEBCORE_BUILTIN_READABLEBYTESTREAMINTERNALS_READABLEBYTESTREAMCONTROLLERHANDLEQUEUEDRAIN 1 |
199 | #define WEBCORE_BUILTIN_READABLEBYTESTREAMINTERNALS_READABLEBYTESTREAMCONTROLLERPULL 1 |
200 | #define WEBCORE_BUILTIN_READABLEBYTESTREAMINTERNALS_READABLEBYTESTREAMCONTROLLERSHOULDCALLPULL 1 |
201 | #define WEBCORE_BUILTIN_READABLEBYTESTREAMINTERNALS_READABLEBYTESTREAMCONTROLLERCALLPULLIFNEEDED 1 |
202 | #define WEBCORE_BUILTIN_READABLEBYTESTREAMINTERNALS_TRANSFERBUFFERTOCURRENTREALM 1 |
203 | #define WEBCORE_BUILTIN_READABLEBYTESTREAMINTERNALS_READABLEBYTESTREAMCONTROLLERENQUEUE 1 |
204 | #define WEBCORE_BUILTIN_READABLEBYTESTREAMINTERNALS_READABLEBYTESTREAMCONTROLLERENQUEUECHUNK 1 |
205 | #define WEBCORE_BUILTIN_READABLEBYTESTREAMINTERNALS_READABLEBYTESTREAMCONTROLLERRESPONDWITHNEWVIEW 1 |
206 | #define WEBCORE_BUILTIN_READABLEBYTESTREAMINTERNALS_READABLEBYTESTREAMCONTROLLERRESPOND 1 |
207 | #define WEBCORE_BUILTIN_READABLEBYTESTREAMINTERNALS_READABLEBYTESTREAMCONTROLLERRESPONDINTERNAL 1 |
208 | #define WEBCORE_BUILTIN_READABLEBYTESTREAMINTERNALS_READABLEBYTESTREAMCONTROLLERRESPONDINREADABLESTATE 1 |
209 | #define WEBCORE_BUILTIN_READABLEBYTESTREAMINTERNALS_READABLEBYTESTREAMCONTROLLERRESPONDINCLOSEDSTATE 1 |
210 | #define WEBCORE_BUILTIN_READABLEBYTESTREAMINTERNALS_READABLEBYTESTREAMCONTROLLERPROCESSPULLDESCRIPTORS 1 |
211 | #define WEBCORE_BUILTIN_READABLEBYTESTREAMINTERNALS_READABLEBYTESTREAMCONTROLLERFILLDESCRIPTORFROMQUEUE 1 |
212 | #define WEBCORE_BUILTIN_READABLEBYTESTREAMINTERNALS_READABLEBYTESTREAMCONTROLLERSHIFTPENDINGDESCRIPTOR 1 |
213 | #define WEBCORE_BUILTIN_READABLEBYTESTREAMINTERNALS_READABLEBYTESTREAMCONTROLLERINVALIDATEBYOBREQUEST 1 |
214 | #define WEBCORE_BUILTIN_READABLEBYTESTREAMINTERNALS_READABLEBYTESTREAMCONTROLLERCOMMITDESCRIPTOR 1 |
215 | #define WEBCORE_BUILTIN_READABLEBYTESTREAMINTERNALS_READABLEBYTESTREAMCONTROLLERCONVERTDESCRIPTOR 1 |
216 | #define WEBCORE_BUILTIN_READABLEBYTESTREAMINTERNALS_READABLESTREAMFULFILLREADINTOREQUEST 1 |
217 | #define WEBCORE_BUILTIN_READABLEBYTESTREAMINTERNALS_READABLESTREAMBYOBREADERREAD 1 |
218 | #define WEBCORE_BUILTIN_READABLEBYTESTREAMINTERNALS_READABLEBYTESTREAMCONTROLLERPULLINTO 1 |
219 | #define WEBCORE_BUILTIN_READABLEBYTESTREAMINTERNALS_READABLESTREAMADDREADINTOREQUEST 1 |
220 | |
221 | #define WEBCORE_FOREACH_READABLEBYTESTREAMINTERNALS_BUILTIN_CODE(macro) \ |
222 | macro(readableByteStreamInternalsPrivateInitializeReadableByteStreamControllerCode, privateInitializeReadableByteStreamController, static_cast<const char*>(nullptr), s_readableByteStreamInternalsPrivateInitializeReadableByteStreamControllerCodeLength) \ |
223 | macro(readableByteStreamInternalsPrivateInitializeReadableStreamBYOBRequestCode, privateInitializeReadableStreamBYOBRequest, static_cast<const char*>(nullptr), s_readableByteStreamInternalsPrivateInitializeReadableStreamBYOBRequestCodeLength) \ |
224 | macro(readableByteStreamInternalsIsReadableByteStreamControllerCode, isReadableByteStreamController, static_cast<const char*>(nullptr), s_readableByteStreamInternalsIsReadableByteStreamControllerCodeLength) \ |
225 | macro(readableByteStreamInternalsIsReadableStreamBYOBRequestCode, isReadableStreamBYOBRequest, static_cast<const char*>(nullptr), s_readableByteStreamInternalsIsReadableStreamBYOBRequestCodeLength) \ |
226 | macro(readableByteStreamInternalsIsReadableStreamBYOBReaderCode, isReadableStreamBYOBReader, static_cast<const char*>(nullptr), s_readableByteStreamInternalsIsReadableStreamBYOBReaderCodeLength) \ |
227 | macro(readableByteStreamInternalsReadableByteStreamControllerCancelCode, readableByteStreamControllerCancel, static_cast<const char*>(nullptr), s_readableByteStreamInternalsReadableByteStreamControllerCancelCodeLength) \ |
228 | macro(readableByteStreamInternalsReadableByteStreamControllerErrorCode, readableByteStreamControllerError, static_cast<const char*>(nullptr), s_readableByteStreamInternalsReadableByteStreamControllerErrorCodeLength) \ |
229 | macro(readableByteStreamInternalsReadableByteStreamControllerCloseCode, readableByteStreamControllerClose, static_cast<const char*>(nullptr), s_readableByteStreamInternalsReadableByteStreamControllerCloseCodeLength) \ |
230 | macro(readableByteStreamInternalsReadableByteStreamControllerClearPendingPullIntosCode, readableByteStreamControllerClearPendingPullIntos, static_cast<const char*>(nullptr), s_readableByteStreamInternalsReadableByteStreamControllerClearPendingPullIntosCodeLength) \ |
231 | macro(readableByteStreamInternalsReadableByteStreamControllerGetDesiredSizeCode, readableByteStreamControllerGetDesiredSize, static_cast<const char*>(nullptr), s_readableByteStreamInternalsReadableByteStreamControllerGetDesiredSizeCodeLength) \ |
232 | macro(readableByteStreamInternalsReadableStreamHasBYOBReaderCode, readableStreamHasBYOBReader, static_cast<const char*>(nullptr), s_readableByteStreamInternalsReadableStreamHasBYOBReaderCodeLength) \ |
233 | macro(readableByteStreamInternalsReadableStreamHasDefaultReaderCode, readableStreamHasDefaultReader, static_cast<const char*>(nullptr), s_readableByteStreamInternalsReadableStreamHasDefaultReaderCodeLength) \ |
234 | macro(readableByteStreamInternalsReadableByteStreamControllerHandleQueueDrainCode, readableByteStreamControllerHandleQueueDrain, static_cast<const char*>(nullptr), s_readableByteStreamInternalsReadableByteStreamControllerHandleQueueDrainCodeLength) \ |
235 | macro(readableByteStreamInternalsReadableByteStreamControllerPullCode, readableByteStreamControllerPull, static_cast<const char*>(nullptr), s_readableByteStreamInternalsReadableByteStreamControllerPullCodeLength) \ |
236 | macro(readableByteStreamInternalsReadableByteStreamControllerShouldCallPullCode, readableByteStreamControllerShouldCallPull, static_cast<const char*>(nullptr), s_readableByteStreamInternalsReadableByteStreamControllerShouldCallPullCodeLength) \ |
237 | macro(readableByteStreamInternalsReadableByteStreamControllerCallPullIfNeededCode, readableByteStreamControllerCallPullIfNeeded, static_cast<const char*>(nullptr), s_readableByteStreamInternalsReadableByteStreamControllerCallPullIfNeededCodeLength) \ |
238 | macro(readableByteStreamInternalsTransferBufferToCurrentRealmCode, transferBufferToCurrentRealm, static_cast<const char*>(nullptr), s_readableByteStreamInternalsTransferBufferToCurrentRealmCodeLength) \ |
239 | macro(readableByteStreamInternalsReadableByteStreamControllerEnqueueCode, readableByteStreamControllerEnqueue, static_cast<const char*>(nullptr), s_readableByteStreamInternalsReadableByteStreamControllerEnqueueCodeLength) \ |
240 | macro(readableByteStreamInternalsReadableByteStreamControllerEnqueueChunkCode, readableByteStreamControllerEnqueueChunk, static_cast<const char*>(nullptr), s_readableByteStreamInternalsReadableByteStreamControllerEnqueueChunkCodeLength) \ |
241 | macro(readableByteStreamInternalsReadableByteStreamControllerRespondWithNewViewCode, readableByteStreamControllerRespondWithNewView, static_cast<const char*>(nullptr), s_readableByteStreamInternalsReadableByteStreamControllerRespondWithNewViewCodeLength) \ |
242 | macro(readableByteStreamInternalsReadableByteStreamControllerRespondCode, readableByteStreamControllerRespond, static_cast<const char*>(nullptr), s_readableByteStreamInternalsReadableByteStreamControllerRespondCodeLength) \ |
243 | macro(readableByteStreamInternalsReadableByteStreamControllerRespondInternalCode, readableByteStreamControllerRespondInternal, static_cast<const char*>(nullptr), s_readableByteStreamInternalsReadableByteStreamControllerRespondInternalCodeLength) \ |
244 | macro(readableByteStreamInternalsReadableByteStreamControllerRespondInReadableStateCode, readableByteStreamControllerRespondInReadableState, static_cast<const char*>(nullptr), s_readableByteStreamInternalsReadableByteStreamControllerRespondInReadableStateCodeLength) \ |
245 | macro(readableByteStreamInternalsReadableByteStreamControllerRespondInClosedStateCode, readableByteStreamControllerRespondInClosedState, static_cast<const char*>(nullptr), s_readableByteStreamInternalsReadableByteStreamControllerRespondInClosedStateCodeLength) \ |
246 | macro(readableByteStreamInternalsReadableByteStreamControllerProcessPullDescriptorsCode, readableByteStreamControllerProcessPullDescriptors, static_cast<const char*>(nullptr), s_readableByteStreamInternalsReadableByteStreamControllerProcessPullDescriptorsCodeLength) \ |
247 | macro(readableByteStreamInternalsReadableByteStreamControllerFillDescriptorFromQueueCode, readableByteStreamControllerFillDescriptorFromQueue, static_cast<const char*>(nullptr), s_readableByteStreamInternalsReadableByteStreamControllerFillDescriptorFromQueueCodeLength) \ |
248 | macro(readableByteStreamInternalsReadableByteStreamControllerShiftPendingDescriptorCode, readableByteStreamControllerShiftPendingDescriptor, static_cast<const char*>(nullptr), s_readableByteStreamInternalsReadableByteStreamControllerShiftPendingDescriptorCodeLength) \ |
249 | macro(readableByteStreamInternalsReadableByteStreamControllerInvalidateBYOBRequestCode, readableByteStreamControllerInvalidateBYOBRequest, static_cast<const char*>(nullptr), s_readableByteStreamInternalsReadableByteStreamControllerInvalidateBYOBRequestCodeLength) \ |
250 | macro(readableByteStreamInternalsReadableByteStreamControllerCommitDescriptorCode, readableByteStreamControllerCommitDescriptor, static_cast<const char*>(nullptr), s_readableByteStreamInternalsReadableByteStreamControllerCommitDescriptorCodeLength) \ |
251 | macro(readableByteStreamInternalsReadableByteStreamControllerConvertDescriptorCode, readableByteStreamControllerConvertDescriptor, static_cast<const char*>(nullptr), s_readableByteStreamInternalsReadableByteStreamControllerConvertDescriptorCodeLength) \ |
252 | macro(readableByteStreamInternalsReadableStreamFulfillReadIntoRequestCode, readableStreamFulfillReadIntoRequest, static_cast<const char*>(nullptr), s_readableByteStreamInternalsReadableStreamFulfillReadIntoRequestCodeLength) \ |
253 | macro(readableByteStreamInternalsReadableStreamBYOBReaderReadCode, readableStreamBYOBReaderRead, static_cast<const char*>(nullptr), s_readableByteStreamInternalsReadableStreamBYOBReaderReadCodeLength) \ |
254 | macro(readableByteStreamInternalsReadableByteStreamControllerPullIntoCode, readableByteStreamControllerPullInto, static_cast<const char*>(nullptr), s_readableByteStreamInternalsReadableByteStreamControllerPullIntoCodeLength) \ |
255 | macro(readableByteStreamInternalsReadableStreamAddReadIntoRequestCode, readableStreamAddReadIntoRequest, static_cast<const char*>(nullptr), s_readableByteStreamInternalsReadableStreamAddReadIntoRequestCodeLength) \ |
256 | |
257 | #define WEBCORE_FOREACH_READABLEBYTESTREAMINTERNALS_BUILTIN_FUNCTION_NAME(macro) \ |
258 | macro(isReadableByteStreamController) \ |
259 | macro(isReadableStreamBYOBReader) \ |
260 | macro(isReadableStreamBYOBRequest) \ |
261 | macro(privateInitializeReadableByteStreamController) \ |
262 | macro(privateInitializeReadableStreamBYOBRequest) \ |
263 | macro(readableByteStreamControllerCallPullIfNeeded) \ |
264 | macro(readableByteStreamControllerCancel) \ |
265 | macro(readableByteStreamControllerClearPendingPullIntos) \ |
266 | macro(readableByteStreamControllerClose) \ |
267 | macro(readableByteStreamControllerCommitDescriptor) \ |
268 | macro(readableByteStreamControllerConvertDescriptor) \ |
269 | macro(readableByteStreamControllerEnqueue) \ |
270 | macro(readableByteStreamControllerEnqueueChunk) \ |
271 | macro(readableByteStreamControllerError) \ |
272 | macro(readableByteStreamControllerFillDescriptorFromQueue) \ |
273 | macro(readableByteStreamControllerGetDesiredSize) \ |
274 | macro(readableByteStreamControllerHandleQueueDrain) \ |
275 | macro(readableByteStreamControllerInvalidateBYOBRequest) \ |
276 | macro(readableByteStreamControllerProcessPullDescriptors) \ |
277 | macro(readableByteStreamControllerPull) \ |
278 | macro(readableByteStreamControllerPullInto) \ |
279 | macro(readableByteStreamControllerRespond) \ |
280 | macro(readableByteStreamControllerRespondInClosedState) \ |
281 | macro(readableByteStreamControllerRespondInReadableState) \ |
282 | macro(readableByteStreamControllerRespondInternal) \ |
283 | macro(readableByteStreamControllerRespondWithNewView) \ |
284 | macro(readableByteStreamControllerShiftPendingDescriptor) \ |
285 | macro(readableByteStreamControllerShouldCallPull) \ |
286 | macro(readableStreamAddReadIntoRequest) \ |
287 | macro(readableStreamBYOBReaderRead) \ |
288 | macro(readableStreamFulfillReadIntoRequest) \ |
289 | macro(readableStreamHasBYOBReader) \ |
290 | macro(readableStreamHasDefaultReader) \ |
291 | macro(transferBufferToCurrentRealm) \ |
292 | |
293 | #define DECLARE_BUILTIN_GENERATOR(codeName, functionName, overriddenName, argumentCount) \ |
294 | JSC::FunctionExecutable* codeName##Generator(JSC::VM&); |
295 | |
296 | WEBCORE_FOREACH_READABLEBYTESTREAMINTERNALS_BUILTIN_CODE(DECLARE_BUILTIN_GENERATOR) |
297 | #undef DECLARE_BUILTIN_GENERATOR |
298 | |
299 | class ReadableByteStreamInternalsBuiltinsWrapper : private JSC::WeakHandleOwner { |
300 | public: |
301 | explicit ReadableByteStreamInternalsBuiltinsWrapper(JSC::VM* vm) |
302 | : m_vm(*vm) |
303 | WEBCORE_FOREACH_READABLEBYTESTREAMINTERNALS_BUILTIN_FUNCTION_NAME(INITIALIZE_BUILTIN_NAMES) |
304 | #define INITIALIZE_BUILTIN_SOURCE_MEMBERS(name, functionName, overriddenName, length) , m_##name##Source(JSC::makeSource(StringImpl::createFromLiteral(s_##name, length), { })) |
305 | WEBCORE_FOREACH_READABLEBYTESTREAMINTERNALS_BUILTIN_CODE(INITIALIZE_BUILTIN_SOURCE_MEMBERS) |
306 | #undef INITIALIZE_BUILTIN_SOURCE_MEMBERS |
307 | { |
308 | } |
309 | |
310 | #define EXPOSE_BUILTIN_EXECUTABLES(name, functionName, overriddenName, length) \ |
311 | JSC::UnlinkedFunctionExecutable* name##Executable(); \ |
312 | const JSC::SourceCode& name##Source() const { return m_##name##Source; } |
313 | WEBCORE_FOREACH_READABLEBYTESTREAMINTERNALS_BUILTIN_CODE(EXPOSE_BUILTIN_EXECUTABLES) |
314 | #undef EXPOSE_BUILTIN_EXECUTABLES |
315 | |
316 | WEBCORE_FOREACH_READABLEBYTESTREAMINTERNALS_BUILTIN_FUNCTION_NAME(DECLARE_BUILTIN_IDENTIFIER_ACCESSOR) |
317 | |
318 | void exportNames(); |
319 | |
320 | private: |
321 | JSC::VM& m_vm; |
322 | |
323 | WEBCORE_FOREACH_READABLEBYTESTREAMINTERNALS_BUILTIN_FUNCTION_NAME(DECLARE_BUILTIN_NAMES) |
324 | |
325 | #define DECLARE_BUILTIN_SOURCE_MEMBERS(name, functionName, overriddenName, length) \ |
326 | JSC::SourceCode m_##name##Source;\ |
327 | JSC::Weak<JSC::UnlinkedFunctionExecutable> m_##name##Executable; |
328 | WEBCORE_FOREACH_READABLEBYTESTREAMINTERNALS_BUILTIN_CODE(DECLARE_BUILTIN_SOURCE_MEMBERS) |
329 | #undef DECLARE_BUILTIN_SOURCE_MEMBERS |
330 | |
331 | }; |
332 | |
333 | #define DEFINE_BUILTIN_EXECUTABLES(name, functionName, overriddenName, length) \ |
334 | inline JSC::UnlinkedFunctionExecutable* ReadableByteStreamInternalsBuiltinsWrapper::name##Executable() \ |
335 | {\ |
336 | if (!m_##name##Executable) {\ |
337 | JSC::Identifier executableName = functionName##PublicName();\ |
338 | if (overriddenName)\ |
339 | executableName = JSC::Identifier::fromString(&m_vm, overriddenName);\ |
340 | m_##name##Executable = JSC::Weak<JSC::UnlinkedFunctionExecutable>(JSC::createBuiltinExecutable(m_vm, m_##name##Source, executableName, s_##name##ConstructAbility), this, &m_##name##Executable);\ |
341 | }\ |
342 | return m_##name##Executable.get();\ |
343 | } |
344 | WEBCORE_FOREACH_READABLEBYTESTREAMINTERNALS_BUILTIN_CODE(DEFINE_BUILTIN_EXECUTABLES) |
345 | #undef DEFINE_BUILTIN_EXECUTABLES |
346 | |
347 | inline void ReadableByteStreamInternalsBuiltinsWrapper::exportNames() |
348 | { |
349 | #define EXPORT_FUNCTION_NAME(name) m_vm.propertyNames->appendExternalName(name##PublicName(), name##PrivateName()); |
350 | WEBCORE_FOREACH_READABLEBYTESTREAMINTERNALS_BUILTIN_FUNCTION_NAME(EXPORT_FUNCTION_NAME) |
351 | #undef EXPORT_FUNCTION_NAME |
352 | } |
353 | |
354 | class ReadableByteStreamInternalsBuiltinFunctions { |
355 | public: |
356 | explicit ReadableByteStreamInternalsBuiltinFunctions(JSC::VM& vm) : m_vm(vm) { } |
357 | |
358 | void init(JSC::JSGlobalObject&); |
359 | void visit(JSC::SlotVisitor&); |
360 | |
361 | public: |
362 | JSC::VM& m_vm; |
363 | |
364 | #define DECLARE_BUILTIN_SOURCE_MEMBERS(functionName) \ |
365 | JSC::WriteBarrier<JSC::JSFunction> m_##functionName##Function; |
366 | WEBCORE_FOREACH_READABLEBYTESTREAMINTERNALS_BUILTIN_FUNCTION_NAME(DECLARE_BUILTIN_SOURCE_MEMBERS) |
367 | #undef DECLARE_BUILTIN_SOURCE_MEMBERS |
368 | }; |
369 | |
370 | inline void ReadableByteStreamInternalsBuiltinFunctions::init(JSC::JSGlobalObject& globalObject) |
371 | { |
372 | #define EXPORT_FUNCTION(codeName, functionName, overriddenName, length)\ |
373 | m_##functionName##Function.set(m_vm, &globalObject, JSC::JSFunction::create(m_vm, codeName##Generator(m_vm), &globalObject)); |
374 | WEBCORE_FOREACH_READABLEBYTESTREAMINTERNALS_BUILTIN_CODE(EXPORT_FUNCTION) |
375 | #undef EXPORT_FUNCTION |
376 | } |
377 | |
378 | inline void ReadableByteStreamInternalsBuiltinFunctions::visit(JSC::SlotVisitor& visitor) |
379 | { |
380 | #define VISIT_FUNCTION(name) visitor.append(m_##name##Function); |
381 | WEBCORE_FOREACH_READABLEBYTESTREAMINTERNALS_BUILTIN_FUNCTION_NAME(VISIT_FUNCTION) |
382 | #undef VISIT_FUNCTION |
383 | } |
384 | |
385 | |
386 | } // namespace WebCore |
387 | |
388 | #endif // ENABLE(STREAMS_API) |
389 | |