mergeFieldFromBuffer method
Implementation
bool mergeFieldFromBuffer(int tag, CodedBufferReader input) {
_ensureWritable('mergeFieldFromBuffer');
final number = getTagFieldNumber(tag);
switch (getTagWireType(tag)) {
case WIRETYPE_VARINT:
mergeVarintField(number, input.readInt64());
return true;
case WIRETYPE_FIXED64:
mergeFixed64Field(number, input.readFixed64());
return true;
case WIRETYPE_LENGTH_DELIMITED:
mergeLengthDelimitedField(number, input.readBytes());
return true;
case WIRETYPE_START_GROUP:
final subGroup = input.readUnknownFieldSetGroup(number);
mergeGroupField(number, subGroup);
return true;
case WIRETYPE_END_GROUP:
return false;
case WIRETYPE_FIXED32:
mergeFixed32Field(number, input.readFixed32());
return true;
default:
throw InvalidProtocolBufferException.invalidWireType();
}
}