twitst4tz

twitter statistics web application
Log | Files | Refs | README | LICENSE

isstream.js (588B)


      1 var stream = require('stream')
      2 
      3 
      4 function isStream (obj) {
      5   return obj instanceof stream.Stream
      6 }
      7 
      8 
      9 function isReadable (obj) {
     10   return isStream(obj) && typeof obj._read == 'function' && typeof obj._readableState == 'object'
     11 }
     12 
     13 
     14 function isWritable (obj) {
     15   return isStream(obj) && typeof obj._write == 'function' && typeof obj._writableState == 'object'
     16 }
     17 
     18 
     19 function isDuplex (obj) {
     20   return isReadable(obj) && isWritable(obj)
     21 }
     22 
     23 
     24 module.exports            = isStream
     25 module.exports.isReadable = isReadable
     26 module.exports.isWritable = isWritable
     27 module.exports.isDuplex   = isDuplex