buffer-concat.js 506 B

123456789101112131415161718192021222324252627282930313233343536
  1. /*!
  2. * depd
  3. * Copyright(c) 2014 Douglas Christopher Wilson
  4. * MIT Licensed
  5. */
  6. 'use strict'
  7. /**
  8. * Module exports.
  9. */
  10. module.exports = bufferConcat
  11. /**
  12. * Concatenate an array of Buffers.
  13. */
  14. function bufferConcat(bufs) {
  15. var length = 0
  16. for (var i = 0, len = bufs.length; i < len; i++) {
  17. length += bufs[i].length
  18. }
  19. var buf = new Buffer(length)
  20. var pos = 0
  21. for (var i = 0, len = bufs.length; i < len; i++) {
  22. bufs[i].copy(buf, pos)
  23. pos += bufs[i].length
  24. }
  25. return buf
  26. }