fallback.ts 1.1 KB

123456789101112131415161718192021
  1. import { getBigInt64 as fallbackGetBigInt64, getBigUint64 as fallbackGetBigUint64, setBigInt64 as fallbackSetBigInt64, setBigUint64 as fallbackSetBigUint64 } from './pure.js';
  2. export const getBigInt64 =
  3. 'getBigInt64' in DataView.prototype ?
  4. (dataView: DataView, byteOffset: number, littleEndian: boolean | undefined) => dataView.getBigInt64(byteOffset, littleEndian) :
  5. fallbackGetBigInt64;
  6. export const getBigUint64 =
  7. 'getBigUint64' in DataView.prototype ?
  8. (dataView: DataView, byteOffset: number, littleEndian: boolean | undefined) => dataView.getBigUint64(byteOffset, littleEndian) :
  9. fallbackGetBigUint64;
  10. export const setBigInt64 =
  11. 'setBigInt64' in DataView.prototype ?
  12. (dataView: DataView, byteOffset: number, value: bigint, littleEndian: boolean | undefined) => dataView.setBigInt64(byteOffset, value, littleEndian) :
  13. fallbackSetBigInt64;
  14. export const setBigUint64 =
  15. 'setBigUint64' in DataView.prototype ?
  16. (dataView: DataView, byteOffset: number, value: bigint, littleEndian: boolean | undefined) => dataView.setBigUint64(byteOffset, value, littleEndian) :
  17. fallbackSetBigUint64;