hexpp.js 736 B

1234567891011121314151617181920212223242526
  1. function toHex (buf, group, wrap, LE) {
  2. buf = buf.buffer || buf
  3. var s = ''
  4. var l = buf.byteLength || buf.length
  5. for (var i = 0; i < l ; i++) {
  6. var byteParam = (i & 0xfffffffc) | (!LE ? i % 4 : 3 - i % 4)
  7. s += ((buf[byteParam] >> 4).toString(16)) +
  8. ((buf[byteParam] & 0xf).toString(16)) +
  9. (group - 1 === i % group ? ' ' : '') +
  10. (wrap - 1 === i % wrap ? '\n' : '')
  11. }
  12. return s
  13. }
  14. var hexpp = module.exports = function hexpp (buffer, opts) {
  15. opts = opts || {}
  16. opts.groups = opts.groups || 4
  17. opts.wrap = opts.wrap || 16
  18. return toHex(buffer, opts.groups, opts.wrap, opts.bigendian, opts.ints)
  19. }
  20. hexpp.defaults = function (opts) {
  21. return function (b) {
  22. return hexpp(b, opts)
  23. }
  24. }