0.2.0 • Published 4 months ago

@jil/bufio v0.2.0

Weekly downloads
-
License
MIT
Repository
-
Last release
4 months ago

@jil/bufio

Buffer and serialization utilities for javascript

This project is TypeScript version from bufio

Usage

import * as bio from '@jil/bufio';

const bw = bio.write();
bw.writeU64(100);
bw.writeString('foo');
const data = bw.render();

const br = bio.read(data);
assert(br.readU64() === 100);
assert(br.readString(3) === 'foo');

Struct Usage

import * as bio from '@jil/bufio';

class MyStruct extends bio.Struct {
  constructor() {
    super();
    this.str = 'hello';
    this.value = 0;
  }

  write(bw) {
    bw.writeVarString(this.str, 'ascii');
    bw.writeU64(this.value);
    return this;
  }

  read(br) {
    this.str = br.readVarString('ascii');
    this.value = br.readU64();
    return this;
  }
}

const obj = new MyStruct();

console.log('Buffer:');
console.log(obj.encode());

console.log('Decoded:');
console.log(MyStruct.decode(obj.encode()));

console.log('Hex:');
console.log(obj.toHex());

console.log('Decoded:');
console.log(MyStruct.fromHex(obj.toHex()));

console.log('Base64:');
console.log(obj.toBase64());

License

  • Copyright (c) 2020-2022, Yuan Tao (MIT License).
  • Copyright (c) 2017, Christopher Jeffrey (MIT License).
0.2.0

4 months ago

0.1.17

7 months ago

0.1.16

11 months ago

0.1.15

1 year ago

0.1.14

1 year ago

0.1.12

1 year ago

0.1.13

1 year ago

0.1.11

2 years ago

0.1.10

2 years ago

0.1.8

2 years ago

0.1.7

2 years ago

0.1.9

2 years ago

0.1.6

2 years ago

0.1.5

2 years ago

0.1.4

2 years ago

0.1.3

2 years ago

0.1.2

2 years ago

0.1.1

2 years ago