Lines Matching refs:stream

10 // for interopt with readable-stream, i.e. readable-stream
13 const kIsDestroyed = SymbolFor('nodejs.stream.destroyed');
14 const kIsErrored = SymbolFor('nodejs.stream.errored');
15 const kIsReadable = SymbolFor('nodejs.stream.readable');
16 const kIsWritable = SymbolFor('nodejs.stream.writable');
17 const kIsDisturbed = SymbolFor('nodejs.stream.disturbed');
106 function isDestroyed(stream) {
107 if (!isNodeStream(stream)) return null;
108 const wState = stream._writableState;
109 const rState = stream._readableState;
111 return !!(stream.destroyed || stream[kIsDestroyed] || state?.destroyed);
115 function isWritableEnded(stream) {
116 if (!isWritableNodeStream(stream)) return null;
117 if (stream.writableEnded === true) return true;
118 const wState = stream._writableState;
125 function isWritableFinished(stream, strict) {
126 if (!isWritableNodeStream(stream)) return null;
127 if (stream.writableFinished === true) return true;
128 const wState = stream._writableState;
138 function isReadableEnded(stream) {
139 if (!isReadableNodeStream(stream)) return null;
140 if (stream.readableEnded === true) return true;
141 const rState = stream._readableState;
148 function isReadableFinished(stream, strict) {
149 if (!isReadableNodeStream(stream)) return null;
150 const rState = stream._readableState;
159 function isReadable(stream) {
160 if (stream && stream[kIsReadable] != null) return stream[kIsReadable];
161 if (typeof stream?.readable !== 'boolean') return null;
162 if (isDestroyed(stream)) return false;
163 return isReadableNodeStream(stream) &&
164 stream.readable &&
165 !isReadableFinished(stream);
168 function isWritable(stream) {
169 if (stream && stream[kIsWritable] != null) return stream[kIsWritable];
170 if (typeof stream?.writable !== 'boolean') return null;
171 if (isDestroyed(stream)) return false;
172 return isWritableNodeStream(stream) &&
173 stream.writable &&
174 !isWritableEnded(stream);
177 function isFinished(stream, opts) {
178 if (!isNodeStream(stream)) {
182 if (isDestroyed(stream)) {
186 if (opts?.readable !== false && isReadable(stream)) {
190 if (opts?.writable !== false && isWritable(stream)) {
197 function isWritableErrored(stream) {
198 if (!isNodeStream(stream)) {
202 if (stream.writableErrored) {
203 return stream.writableErrored;
206 return stream._writableState?.errored ?? null;
209 function isReadableErrored(stream) {
210 if (!isNodeStream(stream)) {
214 if (stream.readableErrored) {
215 return stream.readableErrored;
218 return stream._readableState?.errored ?? null;
221 function isClosed(stream) {
222 if (!isNodeStream(stream)) {
226 if (typeof stream.closed === 'boolean') {
227 return stream.closed;
230 const wState = stream._writableState;
231 const rState = stream._readableState;
240 if (typeof stream._closed === 'boolean' && isOutgoingMessage(stream)) {
241 return stream._closed;
247 function isOutgoingMessage(stream) {
249 typeof stream._closed === 'boolean' &&
250 typeof stream._defaultKeepAlive === 'boolean' &&
251 typeof stream._removedConnection === 'boolean' &&
252 typeof stream._removedContLen === 'boolean'
256 function isServerResponse(stream) {
258 typeof stream._sent100 === 'boolean' &&
259 isOutgoingMessage(stream)
263 function isServerRequest(stream) {
265 typeof stream._consuming === 'boolean' &&
266 typeof stream._dumped === 'boolean' &&
267 stream.req?.upgradeOrConnect === undefined
271 function willEmitClose(stream) {
272 if (!isNodeStream(stream)) return null;
274 const wState = stream._writableState;
275 const rState = stream._readableState;
278 return (!state && isServerResponse(stream)) || !!(
286 function isDisturbed(stream) {
287 return !!(stream && (
288 stream[kIsDisturbed] ??
289 (stream.readableDidRead || stream.readableAborted)
293 function isErrored(stream) {
294 return !!(stream && (
295 stream[kIsErrored] ??
296 stream.readableErrored ??
297 stream.writableErrored ??
298 stream._readableState?.errorEmitted ??
299 stream._writableState?.errorEmitted ??
300 stream._readableState?.errored ??
301 stream._writableState?.errored