INNER CODE UNIT · TypeScript
get
blueshift-gg/doppler · packages/core/index.ts:167
function get(view: DataView, at: number, type: Ty): number | bigint | boolean {
switch (type) {
case 'u8': return view.getUint8(at);
case 'u16': return view.getUint16(at, true);
case 'u32': return view.getUint32(at, true);
case 'u64': return view.getBigUint64(at, true);
case 'i8': return view.getInt8(at);
case 'i16': return view.getInt16(at, true);
case 'i32': return view.getInt32(at, true);
case 'i64': return view.getBigInt64(at, true);
case 'bool': return view.getUint8(at) !== 0;
}
}
function put(view: DataView, at: number, { name, type }: Slot, x: unknown): void {
if (type === 'bool') {
if (typeof x !== 'boolean') throw new TypeError(`${name}: expected a boolean`);
view.setUint8(at, x ? 1 : 0);