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.
		
		
		
		
		
			
		
			
				
					
					
						
							31 lines
						
					
					
						
							514 B
						
					
					
				
			
		
		
	
	
							31 lines
						
					
					
						
							514 B
						
					
					
				| 'use strict';
 | |
| 
 | |
| var stubs = require('stubs')
 | |
| 
 | |
| /*
 | |
|  * StreamEvents can be used 2 ways:
 | |
|  *
 | |
|  * 1:
 | |
|  * function MyStream() {
 | |
|  *   require('stream-events').call(this)
 | |
|  * }
 | |
|  *
 | |
|  * 2:
 | |
|  * require('stream-events')(myStream)
 | |
|  */
 | |
| function StreamEvents(stream) {
 | |
|   stream = stream || this
 | |
| 
 | |
|   var cfg = {
 | |
|     callthrough: true,
 | |
|     calls: 1
 | |
|   }
 | |
| 
 | |
|   stubs(stream, '_read', cfg, stream.emit.bind(stream, 'reading'))
 | |
|   stubs(stream, '_write', cfg, stream.emit.bind(stream, 'writing'))
 | |
| 
 | |
|   return stream
 | |
| }
 | |
| 
 | |
| module.exports = StreamEvents
 |