encodeTo method

void encodeTo(
  1. TypeRef ref,
  2. ByteOutput output
)

Implementation

void encodeTo(TypeRef ref, ByteOutput output) {
  switch (ref.tag) {
    case 'bool':
      U8Codec.codec.encodeTo(0, output);
      break;
    case 'char':
      U8Codec.codec.encodeTo(1, output);
      break;
    case 'str':
      U8Codec.codec.encodeTo(2, output);
      break;
    case 'u8':
      U8Codec.codec.encodeTo(3, output);
      break;
    case 'u16':
      U8Codec.codec.encodeTo(4, output);
      break;
    case 'u32':
      U8Codec.codec.encodeTo(5, output);
      break;
    case 'u64':
      U8Codec.codec.encodeTo(6, output);
      break;
    case 'u128':
      U8Codec.codec.encodeTo(7, output);
      break;
    case 'u256':
      U8Codec.codec.encodeTo(8, output);
      break;
    case 'i8':
      U8Codec.codec.encodeTo(9, output);
      break;
    case 'i16':
      U8Codec.codec.encodeTo(10, output);
      break;
    case 'i32':
      U8Codec.codec.encodeTo(11, output);
      break;
    case 'i64':
      U8Codec.codec.encodeTo(12, output);
      break;
    case 'i128':
      U8Codec.codec.encodeTo(13, output);
      break;
    case 'i256':
      U8Codec.codec.encodeTo(14, output);
      break;
    case 'compactU8':
      U8Codec.codec.encodeTo(15, output);
      break;
    case 'compactU16':
      U8Codec.codec.encodeTo(16, output);
      break;
    case 'compactU32':
      U8Codec.codec.encodeTo(17, output);
      break;
    case 'compactU64':
      U8Codec.codec.encodeTo(18, output);
      break;
    case 'compactU128':
      U8Codec.codec.encodeTo(19, output);
      break;
    case 'compactU256':
      U8Codec.codec.encodeTo(20, output);
      break;
    case 'void':
      U8Codec.codec.encodeTo(21, output);
      break;
    case 'perId':
      U8Codec.codec.encodeTo(22, output);
      CompactCodec.codec.encodeTo(value, output);
      break;
    default:
      throw Exception('Unknown type: $tag');
  }
}