Skip to content

Commit dd46ec8

Browse files
committed
Remove all direct usages of Buffer so that it can be decided based on platform.
1 parent a157685 commit dd46ec8

2 files changed

Lines changed: 13 additions & 12 deletions

File tree

base/WriterBase.ts

Lines changed: 4 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -23,20 +23,20 @@ export class WriterBase {
2323
}
2424

2525
public writeBuffer(buffer:Buffer) {
26-
this.buffer = Buffer.concat([this.buffer, buffer], this.buffer.length + buffer.length);
26+
this.buffer = getBufferClass().concat([this.buffer, buffer], this.buffer.length + buffer.length);
2727

2828
return this;
2929
}
3030

3131
public writeUint8Array(array:Uint8Array) {
32-
this.writeBuffer(Buffer.from(array));
32+
this.writeBuffer(getBufferClass().from(array));
3333

3434
return this;
3535
}
3636

3737
public writeByte(value:number) {
3838
if (this.resizable) {
39-
const buffer = Buffer.alloc(1);
39+
const buffer = getBufferClass().alloc(1);
4040
buffer.writeInt8(value);
4141
this.writeBuffer(buffer);
4242
} else {
@@ -49,7 +49,7 @@ export class WriterBase {
4949

5050
public writeUByte(value:number) {
5151
if (this.resizable) {
52-
const buffer = Buffer.alloc(1);
52+
const buffer = getBufferClass().alloc(1);
5353
buffer.writeUInt8(value);
5454
this.writeBuffer(buffer);
5555
} else {

writers/WriterLE.ts

Lines changed: 9 additions & 8 deletions
Original file line numberDiff line numberDiff line change
@@ -3,11 +3,12 @@
33

44
import { IWriter } from "./IWriter";
55
import { WriterBase } from "../base/WriterBase";
6+
import { getBufferClass } from "../base/BufferShim";
67

78
export class WriterLE extends WriterBase implements IWriter {
89
public writeShort(value:number) {
910
if (this.resizable) {
10-
const buffer = Buffer.alloc(2);
11+
const buffer = getBufferClass().alloc(2);
1112
buffer.writeInt16LE(value);
1213
this.writeBuffer(buffer);
1314
} else {
@@ -20,7 +21,7 @@ export class WriterLE extends WriterBase implements IWriter {
2021

2122
public writeUShort(value:number) {
2223
if (this.resizable) {
23-
const buffer = Buffer.alloc(2);
24+
const buffer = getBufferClass().alloc(2);
2425
buffer.writeUInt16LE(value);
2526
this.writeBuffer(buffer);
2627
} else {
@@ -33,7 +34,7 @@ export class WriterLE extends WriterBase implements IWriter {
3334

3435
public writeInt(value:number) {
3536
if (this.resizable) {
36-
const buffer = Buffer.alloc(4);
37+
const buffer = getBufferClass().alloc(4);
3738
buffer.writeInt32LE(value);
3839
this.writeBuffer(buffer);
3940
} else {
@@ -45,7 +46,7 @@ export class WriterLE extends WriterBase implements IWriter {
4546
}
4647
public writeUInt(value:number) {
4748
if (this.resizable) {
48-
const buffer = Buffer.alloc(4);
49+
const buffer = getBufferClass().alloc(4);
4950
buffer.writeUInt32LE(value);
5051
this.writeBuffer(buffer);
5152
} else {
@@ -62,7 +63,7 @@ export class WriterLE extends WriterBase implements IWriter {
6263
}
6364

6465
if (this.resizable) {
65-
const buffer = Buffer.alloc(8);
66+
const buffer = getBufferClass().alloc(8);
6667
buffer.writeBigInt64LE(value);
6768
this.writeBuffer(buffer);
6869
} else {
@@ -79,7 +80,7 @@ export class WriterLE extends WriterBase implements IWriter {
7980
}
8081

8182
if (this.resizable) {
82-
const buffer = Buffer.alloc(8);
83+
const buffer = getBufferClass().alloc(8);
8384
buffer.writeBigUint64LE(value);
8485
this.writeBuffer(buffer);
8586
} else {
@@ -92,7 +93,7 @@ export class WriterLE extends WriterBase implements IWriter {
9293

9394
public writeFloat(value:number) {
9495
if (this.resizable) {
95-
const buffer = Buffer.alloc(4);
96+
const buffer = getBufferClass().alloc(4);
9697
buffer.writeFloatLE(value);
9798
this.writeBuffer(buffer);
9899
} else {
@@ -105,7 +106,7 @@ export class WriterLE extends WriterBase implements IWriter {
105106

106107
public writeDouble(value:number) {
107108
if (this.resizable) {
108-
const buffer = Buffer.alloc(8);
109+
const buffer = getBufferClass().alloc(8);
109110
buffer.writeDoubleLE(value);
110111
this.writeBuffer(buffer);
111112
} else {

0 commit comments

Comments
 (0)