encode function

int encode(
  1. Uint8List _buffer,
  2. int number, [
  3. int offset = 0
])

Encode

Implementation

int encode(Uint8List _buffer, int number, [int offset = 0]) {
  ByteData buffer = _buffer.buffer.asByteData();
  int size = encodingLength(number);

  // ~6 bit
  if (size == 1) {
    buffer.setUint8(offset, number);

    // 8 bit
  } else if (size == 2) {
    buffer.setUint8(offset, OPS['OP_PUSHDATA1']!);
    buffer.setUint8(offset + 1, number);

    // 16 bit
  } else if (size == 3) {
    buffer.setUint8(offset, OPS['OP_PUSHDATA2']!);
    buffer.setUint16(offset + 1, number, Endian.little);

    // 32 bit
  } else {
    buffer.setUint8(offset, OPS['OP_PUSHDATA4']!);
    buffer.setUint32(offset + 1, number, Endian.little);
  }

  return size;
}