You can not select more than 25 topics
			Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
		
		
		
		
		
			
		
			
				
					21 lines
				
				498 B
			
		
		
			
		
	
	
					21 lines
				
				498 B
			| 
											2 years ago
										 | module.exports = shift | ||
|  | 
 | ||
|  | function shift (stream) { | ||
|  |   var rs = stream._readableState | ||
|  |   if (!rs) return null | ||
|  |   return (rs.objectMode || typeof stream._duplexState === 'number') ? stream.read() : stream.read(getStateLength(rs)) | ||
|  | } | ||
|  | 
 | ||
|  | function getStateLength (state) { | ||
|  |   if (state.buffer.length) { | ||
|  |     // Since node 6.3.0 state.buffer is a BufferList not an array
 | ||
|  |     if (state.buffer.head) { | ||
|  |       return state.buffer.head.data.length | ||
|  |     } | ||
|  | 
 | ||
|  |     return state.buffer[0].length | ||
|  |   } | ||
|  | 
 | ||
|  |   return state.length | ||
|  | } |