|
export function isStream(stream) { |
|
return stream !== null |
|
&& typeof stream === 'object' |
|
&& typeof stream.pipe === 'function'; |
|
} |
|
|
|
export function isWritableStream(stream) { |
|
return isStream(stream) |
|
&& stream.writable !== false |
|
&& typeof stream._write === 'function' |
|
&& typeof stream._writableState === 'object'; |
|
} |
|
|
|
export function isReadableStream(stream) { |
|
return isStream(stream) |
|
&& stream.readable !== false |
|
&& typeof stream._read === 'function' |
|
&& typeof stream._readableState === 'object'; |
|
} |
|
|
|
export function isDuplexStream(stream) { |
|
return isWritableStream(stream) |
|
&& isReadableStream(stream); |
|
} |
|
|
|
export function isTransformStream(stream) { |
|
return isDuplexStream(stream) |
|
&& typeof stream._transform === 'function'; |
|
} |
|
|