22 lines
		
	
	
		
			800 B
		
	
	
	
		
			JavaScript
		
	
	
	
	
	
		
		
			
		
	
	
			22 lines
		
	
	
		
			800 B
		
	
	
	
		
			JavaScript
		
	
	
	
	
	
| 
								 | 
							
								'use strict';
							 | 
						||
| 
								 | 
							
								
							 | 
						||
| 
								 | 
							
								var isStream = module.exports = function (stream) {
							 | 
						||
| 
								 | 
							
									return stream !== null && typeof stream === 'object' && typeof stream.pipe === 'function';
							 | 
						||
| 
								 | 
							
								};
							 | 
						||
| 
								 | 
							
								
							 | 
						||
| 
								 | 
							
								isStream.writable = function (stream) {
							 | 
						||
| 
								 | 
							
									return isStream(stream) && stream.writable !== false && typeof stream._write === 'function' && typeof stream._writableState === 'object';
							 | 
						||
| 
								 | 
							
								};
							 | 
						||
| 
								 | 
							
								
							 | 
						||
| 
								 | 
							
								isStream.readable = function (stream) {
							 | 
						||
| 
								 | 
							
									return isStream(stream) && stream.readable !== false && typeof stream._read === 'function' && typeof stream._readableState === 'object';
							 | 
						||
| 
								 | 
							
								};
							 | 
						||
| 
								 | 
							
								
							 | 
						||
| 
								 | 
							
								isStream.duplex = function (stream) {
							 | 
						||
| 
								 | 
							
									return isStream.writable(stream) && isStream.readable(stream);
							 | 
						||
| 
								 | 
							
								};
							 | 
						||
| 
								 | 
							
								
							 | 
						||
| 
								 | 
							
								isStream.transform = function (stream) {
							 | 
						||
| 
								 | 
							
									return isStream.duplex(stream) && typeof stream._transform === 'function' && typeof stream._transformState === 'object';
							 | 
						||
| 
								 | 
							
								};
							 |