anchor.diff:  
       buffer.write(tokens.bracketsClose);
   
  -    buffer.write('Uint8List');
  -    buffer.write(tokens.space);
  -    buffer.write(naming.getWriterName(input.displayName));
  -    buffer.write(tokens.argsOpen);
  -    buffer.write('${input.displayName} value');
  -    buffer.write(tokens.argsClose);
  -    buffer.write(tokens.bracketsOpen);
  -
  -    buffer.write(
  -        'if (value == null) return new Uint8List.fromList(const [0]);');
  -    buffer.write('final data = [1];');
  -
  -    accessors.forEach((PropertyAccessorElement accessor) {
  -      _CodecData data =
  -          _toWritableData(accessor.returnType.displayName, accessor.returnType);
  -
  -      if (data != null) {
  -        if (data.encoder != null) {
  -          buffer.write(
  -              'write(data, ${data.method}(value.${accessor.displayName}, ${data.encoder}));');
  -        } else {
  -          buffer.write(
  -              'write(data, ${data.method}(value.${accessor.displayName}));');
  -        }
  -      }
  -    });
  -
  -    buffer.write('return new Uint8List.fromList(data);');
  -
  -    buffer.write(tokens.bracketsClose);
  -
  -    buffer.write(input.displayName);
  -    buffer.write(tokens.space);
  -    buffer.write(naming.getReaderName(input.displayName));
  -    buffer.write(tokens.argsOpen);
  -    buffer.write('Uint8List data');
  -    buffer.write(tokens.argsClose);
  -    buffer.write(tokens.bracketsOpen);
  -
  -    buffer.write('if (data[0] == 0) return null;');
  -    buffer.write('int _size;var index = 1;');
  -
  -    accessors.forEach((PropertyAccessorElement accessor) {
  -      _CodecData data =
  -          _toReadableData(accessor.returnType.displayName, accessor.returnType);
  -
  -      buffer.write('_size = data[index];');
  -
  -      if (data != null) {
  -        if (data.encoder != null) {
  -          buffer.write(
  -              'final ${accessor.displayName} = ${data.method}(Uint8List.fromList(data.sublist(index + 1, index + _size + 1)), ${data.encoder});');
  -        } else {
  -          buffer.write(
  -              'final ${accessor.displayName} = ${data.method}(Uint8List.fromList(data.sublist(index + 1, index + _size + 1)));');
  -        }
  -      }
  -
  -      buffer.write('index += _size + 1;');
  -    });
  -
  -    buffer.write('return new ${naming.getImplClassName(input.displayName)}(');
  -
  -    buffer.write(accessors
  -        .map((PropertyAccessorElement accessor) =>
  -            '${accessor.displayName}: ${accessor.displayName}')
  -        .join(','));
  -
  -    buffer.writeln(');');
  -
  -    buffer.write(tokens.bracketsClose);
  -
       /// Codec
       buffer.write(tokens.decl.forClass);
       buffer.write(tokens.space);
  
positive.code:     buffer.write(naming.getCodecEncoderName(input.displayName));
      buffer.write(tokens.space);
  
      buffer
          .write('extends Converter<${input.displayName}, Map>');
  
      buffer.writeln(tokens.bracketsOpen);
  
  
negative.code: 
      buffer.write(tokens.bracketsClose);
  
      buffer.writeln('@override');
      buffer.write(tokens.space);
      buffer.write('bool');
  