(type, value)
| 1756 | } |
| 1757 | |
| 1758 | function typedValueToBuffer(type, value) { |
| 1759 | let buffer; |
| 1760 | switch(type) { |
| 1761 | case "Array": |
| 1762 | case "Uint8Array": |
| 1763 | if (!Array.isArray(value)) |
| 1764 | throw new Error(`value of "${type}" must be Array (not "${value})"`); |
| 1765 | buffer = new Uint8Array(value).buffer; |
| 1766 | break; |
| 1767 | case "String": |
| 1768 | buffer = ArrayBuffer.fromString(value); |
| 1769 | break; |
| 1770 | case "Uint8": |
| 1771 | buffer = new Uint8Array([value & 0xFF]).buffer; |
| 1772 | break; |
| 1773 | case "Uint16": |
| 1774 | buffer = new Uint8Array([value & 0xFF, (value >> 8) & 0xFF]).buffer; |
| 1775 | break; |
| 1776 | case "Uint32": |
| 1777 | buffer = new Uint8Array([value & 0xFF, (value >> 8) & 0xFF, (value >> 16) & 0xFF, (value >> 24) & 0xFF]).buffer; |
| 1778 | break; |
| 1779 | case "ArrayBuffer": |
| 1780 | default: |
| 1781 | buffer = value; |
| 1782 | break; |
| 1783 | } |
| 1784 | return buffer; |
| 1785 | } |
no test coverage detected