|
| 1 | +const { Buffer } = require('buffer'); |
| 2 | + |
| 3 | +/** |
| 4 | + * possible binary number payload parsers |
| 5 | + * |
| 6 | + * @param {number} int8 signed 8-bit integer |
| 7 | + * @param {number} int16be signed 16-bit big-endian integer |
| 8 | + * @param {number} int16le signed 16-bit little-endian integer |
| 9 | + * @param {number} int32be signed 32-bit big-endian integer |
| 10 | + * @param {number} int32le signed 32-bit little-endian integer |
| 11 | + * |
| 12 | + * @param {number} uint8 unsigned 8-bit integer |
| 13 | + * @param {number} uint16be unsigned 16-bit big-endian integer |
| 14 | + * @param {number} uint16le unsigned 16-bit little-endian integer |
| 15 | + * @param {number} uint32be unsigned 32-bit big-endian integer |
| 16 | + * @param {number} uint32le unsigned 32-bit little-endian integer |
| 17 | + * |
| 18 | + * @param {number} float32be 32-bit big-endian float |
| 19 | + * @param {number} float32le 32-bit little-endian float |
| 20 | + * @param {number} double64be 64-bit big-endian double |
| 21 | + * @param {number} double64le 64-bit little-endian double |
| 22 | + */ |
| 23 | +function process( |
| 24 | + int8, |
| 25 | + int16be, |
| 26 | + int16le, |
| 27 | + int32be, |
| 28 | + int32le, |
| 29 | + |
| 30 | + uint8, |
| 31 | + uint16be, |
| 32 | + uint16le, |
| 33 | + uint32be, |
| 34 | + uint32le, |
| 35 | + |
| 36 | + float32be, |
| 37 | + float32le, |
| 38 | + double64be, |
| 39 | + double64le, |
| 40 | +) { |
| 41 | + return { |
| 42 | + int8 : Buffer.from(int8).readInt8(), |
| 43 | + int16be: Buffer.from(int16be).readInt16BE(), |
| 44 | + int16le: Buffer.from(int16le).readInt16LE(), |
| 45 | + int32be: Buffer.from(int32be).readInt32BE(), |
| 46 | + int32le: Buffer.from(int32le).readInt32BE(), |
| 47 | + |
| 48 | + uint8 : Buffer.from(uint8).readUInt8(), |
| 49 | + uint16be: Buffer.from(uint16be).readUInt16BE(), |
| 50 | + uint16le: Buffer.from(uint16le).readUInt16LE(), |
| 51 | + uint32be: Buffer.from(uint32be).readUInt32BE(), |
| 52 | + uint32le: Buffer.from(uint32le).readUInt32BE(), |
| 53 | + |
| 54 | + float32be : Buffer.from(float32be).readFloatBE(), |
| 55 | + float32le : Buffer.from(float32le).readFloatLE(), |
| 56 | + double64be: Buffer.from(double64be).readDoubleBE(), |
| 57 | + double64le: Buffer.from(double64le).readDoubleLE(), |
| 58 | + }; |
| 59 | +} |
0 commit comments