Mini Shell

Direktori : /proc/self/root/lib/node_modules/npm/node_modules/stream-shift/
Upload File :
Current File : //proc/self/root/lib/node_modules/npm/node_modules/stream-shift/index.js

module.exports = shift

function shift (stream) {
  var rs = stream._readableState
  if (!rs) return null
  return rs.objectMode ? 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
}

Zerion Mini Shell 1.0