From ff334a60eb2e74722867dd41b78d7c8c90bc8d0c Mon Sep 17 00:00:00 2001 From: Jon Skeet Date: Wed, 5 Aug 2015 11:23:38 +0100 Subject: Change ReadTag and PeekTag to just use 0 as a return value for "end of stream", rather than using an awkward out parameter. This simplifies quite a lot of code. Generated code in next commit. --- .../CodedInputStreamExtensions.cs | 3 +- .../Google.Protobuf.Test/CodedInputStreamTest.cs | 20 ++++---- .../Google.Protobuf.Test/CodedOutputStreamTest.cs | 19 +++++--- .../Collections/RepeatedFieldTest.cs | 4 +- csharp/src/Google.Protobuf/CodedInputStream.cs | 56 ++++++++++------------ csharp/src/Google.Protobuf/Collections/MapField.cs | 6 +-- csharp/src/Google.Protobuf/FieldCodec.cs | 6 +-- .../protobuf/compiler/csharp/csharp_message.cc | 4 +- 8 files changed, 53 insertions(+), 65 deletions(-) diff --git a/csharp/src/Google.Protobuf.Test/CodedInputStreamExtensions.cs b/csharp/src/Google.Protobuf.Test/CodedInputStreamExtensions.cs index 408c7cb9..23af2887 100644 --- a/csharp/src/Google.Protobuf.Test/CodedInputStreamExtensions.cs +++ b/csharp/src/Google.Protobuf.Test/CodedInputStreamExtensions.cs @@ -38,8 +38,7 @@ namespace Google.Protobuf { public static void AssertNextTag(this CodedInputStream input, uint expectedTag) { - uint tag; - Assert.IsTrue(input.ReadTag(out tag)); + uint tag = input.ReadTag(); Assert.AreEqual(expectedTag, tag); } diff --git a/csharp/src/Google.Protobuf.Test/CodedInputStreamTest.cs b/csharp/src/Google.Protobuf.Test/CodedInputStreamTest.cs index 6e25fa37..c4c92efd 100644 --- a/csharp/src/Google.Protobuf.Test/CodedInputStreamTest.cs +++ b/csharp/src/Google.Protobuf.Test/CodedInputStreamTest.cs @@ -279,9 +279,7 @@ namespace Google.Protobuf ms.Position = 0; CodedInputStream input = new CodedInputStream(ms); - uint testtag; - Assert.IsTrue(input.ReadTag(out testtag)); - Assert.AreEqual(tag, testtag); + Assert.AreEqual(tag, input.ReadTag()); // TODO(jonskeet): Should this be ArgumentNullException instead? Assert.Throws(() => input.ReadBytes()); @@ -377,9 +375,7 @@ namespace Google.Protobuf CodedInputStream input = new CodedInputStream(ms); - uint actualTag; - Assert.IsTrue(input.ReadTag(out actualTag)); - Assert.AreEqual(tag, actualTag); + Assert.AreEqual(tag, input.ReadTag()); string text = input.ReadString(); Assert.AreEqual('\ufffd', text[0]); } @@ -430,15 +426,21 @@ namespace Google.Protobuf ms.Position = 0; CodedInputStream input = new CodedInputStream(ms, new byte[ms.Length / 2]); - uint tag; - Assert.IsTrue(input.ReadTag(out tag)); + uint tag = input.ReadTag(); Assert.AreEqual(1, WireFormat.GetTagFieldNumber(tag)); Assert.AreEqual(100, input.ReadBytes().Length); - Assert.IsTrue(input.ReadTag(out tag)); + tag = input.ReadTag(); Assert.AreEqual(2, WireFormat.GetTagFieldNumber(tag)); Assert.AreEqual(100, input.ReadBytes().Length); } } + + [Test] + public void Tag0Throws() + { + var input = new CodedInputStream(new byte[] { 0 }); + Assert.Throws(() => input.ReadTag()); + } } } \ No newline at end of file diff --git a/csharp/src/Google.Protobuf.Test/CodedOutputStreamTest.cs b/csharp/src/Google.Protobuf.Test/CodedOutputStreamTest.cs index af329174..c1bf7bd6 100644 --- a/csharp/src/Google.Protobuf.Test/CodedOutputStreamTest.cs +++ b/csharp/src/Google.Protobuf.Test/CodedOutputStreamTest.cs @@ -335,15 +335,16 @@ namespace Google.Protobuf // Now test Input stream: { CodedInputStream cin = new CodedInputStream(new MemoryStream(bytes), new byte[50]); - uint tag; Assert.AreEqual(0, cin.Position); // Field 1: - Assert.IsTrue(cin.ReadTag(out tag) && tag >> 3 == 1); + uint tag = cin.ReadTag(); + Assert.AreEqual(1, tag >> 3); Assert.AreEqual(1, cin.Position); Assert.AreEqual(500, cin.ReadInt32()); Assert.AreEqual(3, cin.Position); //Field 2: - Assert.IsTrue(cin.ReadTag(out tag) && tag >> 3 == 2); + tag = cin.ReadTag(); + Assert.AreEqual(2, tag >> 3); Assert.AreEqual(4, cin.Position); int childlen = cin.ReadLength(); Assert.AreEqual(120, childlen); @@ -353,19 +354,22 @@ namespace Google.Protobuf // Now we are reading child message { // Field 11: numeric value: 500 - Assert.IsTrue(cin.ReadTag(out tag) && tag >> 3 == 11); + tag = cin.ReadTag(); + Assert.AreEqual(11, tag >> 3); Assert.AreEqual(6, cin.Position); Assert.AreEqual(500, cin.ReadInt32()); Assert.AreEqual(8, cin.Position); //Field 12: length delimited 120 bytes - Assert.IsTrue(cin.ReadTag(out tag) && tag >> 3 == 12); + tag = cin.ReadTag(); + Assert.AreEqual(12, tag >> 3); Assert.AreEqual(9, cin.Position); ByteString bstr = cin.ReadBytes(); Assert.AreEqual(110, bstr.Length); Assert.AreEqual((byte) 109, bstr[109]); Assert.AreEqual(120, cin.Position); // Field 13: fixed numeric value: 501 - Assert.IsTrue(cin.ReadTag(out tag) && tag >> 3 == 13); + tag = cin.ReadTag(); + Assert.AreEqual(13, tag >> 3); // ROK - Previously broken here, this returned 126 failing to account for bufferSizeAfterLimit Assert.AreEqual(121, cin.Position); Assert.AreEqual(501, cin.ReadSFixed32()); @@ -375,7 +379,8 @@ namespace Google.Protobuf cin.PopLimit(oldlimit); Assert.AreEqual(125, cin.Position); // Field 3: fixed numeric value: 501 - Assert.IsTrue(cin.ReadTag(out tag) && tag >> 3 == 3); + tag = cin.ReadTag(); + Assert.AreEqual(3, tag >> 3); Assert.AreEqual(126, cin.Position); Assert.AreEqual(501, cin.ReadSFixed32()); Assert.AreEqual(130, cin.Position); diff --git a/csharp/src/Google.Protobuf.Test/Collections/RepeatedFieldTest.cs b/csharp/src/Google.Protobuf.Test/Collections/RepeatedFieldTest.cs index 322100d0..8c804fdd 100644 --- a/csharp/src/Google.Protobuf.Test/Collections/RepeatedFieldTest.cs +++ b/csharp/src/Google.Protobuf.Test/Collections/RepeatedFieldTest.cs @@ -455,7 +455,7 @@ namespace Google.Protobuf.Collections Assert.AreEqual(0, output.SpaceLeft); CodedInputStream input = new CodedInputStream(bytes); - Assert.IsTrue(input.ReadTag(out tag)); + tag = input.ReadTag(); RepeatedField values = new RepeatedField(); values.AddEntriesFrom(input, FieldCodec.ForEnum(tag, x => (int)x, x => (SampleEnum)x)); @@ -493,7 +493,7 @@ namespace Google.Protobuf.Collections Assert.AreEqual(0, output.SpaceLeft); CodedInputStream input = new CodedInputStream(bytes); - Assert.IsTrue(input.ReadTag(out tag)); + tag = input.ReadTag(); RepeatedField values = new RepeatedField(); values.AddEntriesFrom(input, FieldCodec.ForEnum(tag, x => (int)x, x => (SampleEnum)x)); diff --git a/csharp/src/Google.Protobuf/CodedInputStream.cs b/csharp/src/Google.Protobuf/CodedInputStream.cs index 5da03b5c..0e2495f1 100644 --- a/csharp/src/Google.Protobuf/CodedInputStream.cs +++ b/csharp/src/Google.Protobuf/CodedInputStream.cs @@ -254,37 +254,35 @@ namespace Google.Protobuf #region Reading of tags etc /// - /// Attempts to peek at the next field tag. + /// Peeks at the next field tag. This is like calling , but the + /// tag is not consumed. (So a subsequent call to will return the + /// same value.) /// - public bool PeekNextTag(out uint fieldTag) + public uint PeekTag() { if (hasNextTag) { - fieldTag = nextTag; - return true; + return nextTag; } uint savedLast = lastTag; - hasNextTag = ReadTag(out nextTag); - lastTag = savedLast; - fieldTag = nextTag; - return hasNextTag; + nextTag = ReadTag(); + hasNextTag = true; + lastTag = savedLast; // Undo the side effect of ReadTag + return nextTag; } /// - /// Attempts to read a field tag, returning false if we have reached the end - /// of the input data. + /// Reads a field tag, returning the tag of 0 for "end of stream". /// - /// The 'tag' of the field (id * 8 + wire-format) - /// true if the next fieldTag was read - public bool ReadTag(out uint fieldTag) + /// The next field tag, or 0 for end of stream. (0 is never a valid tag.) + public uint ReadTag() { if (hasNextTag) { - fieldTag = nextTag; - lastTag = fieldTag; + lastTag = nextTag; hasNextTag = false; - return true; + return lastTag; } // Optimize for the incredibly common case of having at least two bytes left in the buffer, @@ -294,7 +292,7 @@ namespace Google.Protobuf int tmp = buffer[bufferPos++]; if (tmp < 128) { - fieldTag = (uint)tmp; + lastTag = (uint)tmp; } else { @@ -302,13 +300,13 @@ namespace Google.Protobuf if ((tmp = buffer[bufferPos++]) < 128) { result |= tmp << 7; - fieldTag = (uint) result; + lastTag = (uint) result; } else { // Nope, rewind and go the potentially slow route. bufferPos -= 2; - fieldTag = ReadRawVarint32(); + lastTag = ReadRawVarint32(); } } } @@ -316,20 +314,18 @@ namespace Google.Protobuf { if (IsAtEnd) { - fieldTag = 0; - lastTag = fieldTag; - return false; + lastTag = 0; + return 0; // This is the only case in which we return 0. } - fieldTag = ReadRawVarint32(); + lastTag = ReadRawVarint32(); } - lastTag = fieldTag; if (lastTag == 0) { // If we actually read zero, that's not a valid tag. throw InvalidProtocolBufferException.InvalidTag(); } - return true; + return lastTag; } /// @@ -580,14 +576,10 @@ namespace Google.Protobuf /// public bool MaybeConsumeTag(uint tag) { - uint next; - if (PeekNextTag(out next)) + if (PeekTag() == tag) { - if (next == tag) - { - hasNextTag = false; - return true; - } + hasNextTag = false; + return true; } return false; } diff --git a/csharp/src/Google.Protobuf/Collections/MapField.cs b/csharp/src/Google.Protobuf/Collections/MapField.cs index fed3d062..5eb2c2fc 100644 --- a/csharp/src/Google.Protobuf/Collections/MapField.cs +++ b/csharp/src/Google.Protobuf/Collections/MapField.cs @@ -627,12 +627,8 @@ namespace Google.Protobuf.Collections public void MergeFrom(CodedInputStream input) { uint tag; - while (input.ReadTag(out tag)) + while ((tag = input.ReadTag()) != 0) { - if (tag == 0) - { - throw InvalidProtocolBufferException.InvalidTag(); - } if (tag == codec.keyCodec.Tag) { Key = codec.keyCodec.Read(input); diff --git a/csharp/src/Google.Protobuf/FieldCodec.cs b/csharp/src/Google.Protobuf/FieldCodec.cs index 1076c2a9..15d52c7d 100644 --- a/csharp/src/Google.Protobuf/FieldCodec.cs +++ b/csharp/src/Google.Protobuf/FieldCodec.cs @@ -298,12 +298,8 @@ namespace Google.Protobuf uint tag; T value = codec.DefaultValue; - while (input.ReadTag(out tag)) + while ((tag = input.ReadTag()) != 0) { - if (tag == 0) - { - throw InvalidProtocolBufferException.InvalidTag(); - } if (tag == codec.Tag) { value = codec.Read(input); diff --git a/src/google/protobuf/compiler/csharp/csharp_message.cc b/src/google/protobuf/compiler/csharp/csharp_message.cc index ea722455..40c13de5 100644 --- a/src/google/protobuf/compiler/csharp/csharp_message.cc +++ b/src/google/protobuf/compiler/csharp/csharp_message.cc @@ -417,13 +417,11 @@ void MessageGenerator::GenerateMergingMethods(io::Printer* printer) { printer->Indent(); printer->Print( "uint tag;\n" - "while (input.ReadTag(out tag)) {\n" + "while ((tag = input.ReadTag()) != 0) {\n" " switch(tag) {\n"); printer->Indent(); printer->Indent(); printer->Print( - "case 0:\n" // 0 signals EOF / limit reached - " throw pb::InvalidProtocolBufferException.InvalidTag();\n" "default:\n" " if (pb::WireFormat.IsEndGroupTag(tag)) {\n" " return;\n" -- cgit v1.2.3 From 1a57ad8b414d7b627cc8c68efc5c4fd9ce72e3da Mon Sep 17 00:00:00 2001 From: Jon Skeet Date: Wed, 5 Aug 2015 11:23:52 +0100 Subject: Generated code changes for previous commit. --- csharp/src/AddressBook/Addressbook.cs | 12 +- .../src/Google.Protobuf.Conformance/Conformance.cs | 20 +-- .../TestProtos/MapUnittestProto3.cs | 28 ++--- .../TestProtos/UnittestImportProto3.cs | 4 +- .../TestProtos/UnittestImportPublicProto3.cs | 4 +- .../TestProtos/UnittestIssues.cs | 40 ++---- .../TestProtos/UnittestProto3.cs | 140 ++++++--------------- .../TestProtos/UnittestWellKnownTypes.cs | 16 +-- .../Reflection/DescriptorProtoFile.cs | 88 ++++--------- csharp/src/Google.Protobuf/WellKnownTypes/Any.cs | 4 +- csharp/src/Google.Protobuf/WellKnownTypes/Api.cs | 8 +- .../src/Google.Protobuf/WellKnownTypes/Duration.cs | 4 +- csharp/src/Google.Protobuf/WellKnownTypes/Empty.cs | 4 +- .../Google.Protobuf/WellKnownTypes/FieldMask.cs | 4 +- .../WellKnownTypes/SourceContext.cs | 4 +- .../src/Google.Protobuf/WellKnownTypes/Struct.cs | 12 +- .../Google.Protobuf/WellKnownTypes/Timestamp.cs | 4 +- csharp/src/Google.Protobuf/WellKnownTypes/Type.cs | 20 +-- .../src/Google.Protobuf/WellKnownTypes/Wrappers.cs | 36 ++---- 19 files changed, 113 insertions(+), 339 deletions(-) diff --git a/csharp/src/AddressBook/Addressbook.cs b/csharp/src/AddressBook/Addressbook.cs index 571478f6..85fa2977 100644 --- a/csharp/src/AddressBook/Addressbook.cs +++ b/csharp/src/AddressBook/Addressbook.cs @@ -186,10 +186,8 @@ namespace Google.Protobuf.Examples.AddressBook { public void MergeFrom(pb::CodedInputStream input) { uint tag; - while (input.ReadTag(out tag)) { + while ((tag = input.ReadTag()) != 0) { switch(tag) { - case 0: - throw pb::InvalidProtocolBufferException.InvalidTag(); default: if (pb::WireFormat.IsEndGroupTag(tag)) { return; @@ -334,10 +332,8 @@ namespace Google.Protobuf.Examples.AddressBook { public void MergeFrom(pb::CodedInputStream input) { uint tag; - while (input.ReadTag(out tag)) { + while ((tag = input.ReadTag()) != 0) { switch(tag) { - case 0: - throw pb::InvalidProtocolBufferException.InvalidTag(); default: if (pb::WireFormat.IsEndGroupTag(tag)) { return; @@ -442,10 +438,8 @@ namespace Google.Protobuf.Examples.AddressBook { public void MergeFrom(pb::CodedInputStream input) { uint tag; - while (input.ReadTag(out tag)) { + while ((tag = input.ReadTag()) != 0) { switch(tag) { - case 0: - throw pb::InvalidProtocolBufferException.InvalidTag(); default: if (pb::WireFormat.IsEndGroupTag(tag)) { return; diff --git a/csharp/src/Google.Protobuf.Conformance/Conformance.cs b/csharp/src/Google.Protobuf.Conformance/Conformance.cs index db0c1225..50a6756c 100644 --- a/csharp/src/Google.Protobuf.Conformance/Conformance.cs +++ b/csharp/src/Google.Protobuf.Conformance/Conformance.cs @@ -318,10 +318,8 @@ namespace Conformance { public void MergeFrom(pb::CodedInputStream input) { uint tag; - while (input.ReadTag(out tag)) { + while ((tag = input.ReadTag()) != 0) { switch(tag) { - case 0: - throw pb::InvalidProtocolBufferException.InvalidTag(); default: if (pb::WireFormat.IsEndGroupTag(tag)) { return; @@ -556,10 +554,8 @@ namespace Conformance { public void MergeFrom(pb::CodedInputStream input) { uint tag; - while (input.ReadTag(out tag)) { + while ((tag = input.ReadTag()) != 0) { switch(tag) { - case 0: - throw pb::InvalidProtocolBufferException.InvalidTag(); default: if (pb::WireFormat.IsEndGroupTag(tag)) { return; @@ -1830,10 +1826,8 @@ namespace Conformance { public void MergeFrom(pb::CodedInputStream input) { uint tag; - while (input.ReadTag(out tag)) { + while ((tag = input.ReadTag()) != 0) { switch(tag) { - case 0: - throw pb::InvalidProtocolBufferException.InvalidTag(); default: if (pb::WireFormat.IsEndGroupTag(tag)) { return; @@ -2259,10 +2253,8 @@ namespace Conformance { public void MergeFrom(pb::CodedInputStream input) { uint tag; - while (input.ReadTag(out tag)) { + while ((tag = input.ReadTag()) != 0) { switch(tag) { - case 0: - throw pb::InvalidProtocolBufferException.InvalidTag(); default: if (pb::WireFormat.IsEndGroupTag(tag)) { return; @@ -2378,10 +2370,8 @@ namespace Conformance { public void MergeFrom(pb::CodedInputStream input) { uint tag; - while (input.ReadTag(out tag)) { + while ((tag = input.ReadTag()) != 0) { switch(tag) { - case 0: - throw pb::InvalidProtocolBufferException.InvalidTag(); default: if (pb::WireFormat.IsEndGroupTag(tag)) { return; diff --git a/csharp/src/Google.Protobuf.Test/TestProtos/MapUnittestProto3.cs b/csharp/src/Google.Protobuf.Test/TestProtos/MapUnittestProto3.cs index db28213c..f6835c4b 100644 --- a/csharp/src/Google.Protobuf.Test/TestProtos/MapUnittestProto3.cs +++ b/csharp/src/Google.Protobuf.Test/TestProtos/MapUnittestProto3.cs @@ -473,10 +473,8 @@ namespace Google.Protobuf.TestProtos { public void MergeFrom(pb::CodedInputStream input) { uint tag; - while (input.ReadTag(out tag)) { + while ((tag = input.ReadTag()) != 0) { switch(tag) { - case 0: - throw pb::InvalidProtocolBufferException.InvalidTag(); default: if (pb::WireFormat.IsEndGroupTag(tag)) { return; @@ -647,10 +645,8 @@ namespace Google.Protobuf.TestProtos { public void MergeFrom(pb::CodedInputStream input) { uint tag; - while (input.ReadTag(out tag)) { + while ((tag = input.ReadTag()) != 0) { switch(tag) { - case 0: - throw pb::InvalidProtocolBufferException.InvalidTag(); default: if (pb::WireFormat.IsEndGroupTag(tag)) { return; @@ -749,10 +745,8 @@ namespace Google.Protobuf.TestProtos { public void MergeFrom(pb::CodedInputStream input) { uint tag; - while (input.ReadTag(out tag)) { + while ((tag = input.ReadTag()) != 0) { switch(tag) { - case 0: - throw pb::InvalidProtocolBufferException.InvalidTag(); default: if (pb::WireFormat.IsEndGroupTag(tag)) { return; @@ -862,10 +856,8 @@ namespace Google.Protobuf.TestProtos { public void MergeFrom(pb::CodedInputStream input) { uint tag; - while (input.ReadTag(out tag)) { + while ((tag = input.ReadTag()) != 0) { switch(tag) { - case 0: - throw pb::InvalidProtocolBufferException.InvalidTag(); default: if (pb::WireFormat.IsEndGroupTag(tag)) { return; @@ -1161,10 +1153,8 @@ namespace Google.Protobuf.TestProtos { public void MergeFrom(pb::CodedInputStream input) { uint tag; - while (input.ReadTag(out tag)) { + while ((tag = input.ReadTag()) != 0) { switch(tag) { - case 0: - throw pb::InvalidProtocolBufferException.InvalidTag(); default: if (pb::WireFormat.IsEndGroupTag(tag)) { return; @@ -1316,10 +1306,8 @@ namespace Google.Protobuf.TestProtos { public void MergeFrom(pb::CodedInputStream input) { uint tag; - while (input.ReadTag(out tag)) { + while ((tag = input.ReadTag()) != 0) { switch(tag) { - case 0: - throw pb::InvalidProtocolBufferException.InvalidTag(); default: if (pb::WireFormat.IsEndGroupTag(tag)) { return; @@ -1425,10 +1413,8 @@ namespace Google.Protobuf.TestProtos { public void MergeFrom(pb::CodedInputStream input) { uint tag; - while (input.ReadTag(out tag)) { + while ((tag = input.ReadTag()) != 0) { switch(tag) { - case 0: - throw pb::InvalidProtocolBufferException.InvalidTag(); default: if (pb::WireFormat.IsEndGroupTag(tag)) { return; diff --git a/csharp/src/Google.Protobuf.Test/TestProtos/UnittestImportProto3.cs b/csharp/src/Google.Protobuf.Test/TestProtos/UnittestImportProto3.cs index ae6e3a3f..646a01a2 100644 --- a/csharp/src/Google.Protobuf.Test/TestProtos/UnittestImportProto3.cs +++ b/csharp/src/Google.Protobuf.Test/TestProtos/UnittestImportProto3.cs @@ -136,10 +136,8 @@ namespace Google.Protobuf.TestProtos { public void MergeFrom(pb::CodedInputStream input) { uint tag; - while (input.ReadTag(out tag)) { + while ((tag = input.ReadTag()) != 0) { switch(tag) { - case 0: - throw pb::InvalidProtocolBufferException.InvalidTag(); default: if (pb::WireFormat.IsEndGroupTag(tag)) { return; diff --git a/csharp/src/Google.Protobuf.Test/TestProtos/UnittestImportPublicProto3.cs b/csharp/src/Google.Protobuf.Test/TestProtos/UnittestImportPublicProto3.cs index 103ea8bb..225775a3 100644 --- a/csharp/src/Google.Protobuf.Test/TestProtos/UnittestImportPublicProto3.cs +++ b/csharp/src/Google.Protobuf.Test/TestProtos/UnittestImportPublicProto3.cs @@ -122,10 +122,8 @@ namespace Google.Protobuf.TestProtos { public void MergeFrom(pb::CodedInputStream input) { uint tag; - while (input.ReadTag(out tag)) { + while ((tag = input.ReadTag()) != 0) { switch(tag) { - case 0: - throw pb::InvalidProtocolBufferException.InvalidTag(); default: if (pb::WireFormat.IsEndGroupTag(tag)) { return; diff --git a/csharp/src/Google.Protobuf.Test/TestProtos/UnittestIssues.cs b/csharp/src/Google.Protobuf.Test/TestProtos/UnittestIssues.cs index 4e154456..1bf40ead 100644 --- a/csharp/src/Google.Protobuf.Test/TestProtos/UnittestIssues.cs +++ b/csharp/src/Google.Protobuf.Test/TestProtos/UnittestIssues.cs @@ -139,10 +139,8 @@ namespace UnitTest.Issues.TestProtos { public void MergeFrom(pb::CodedInputStream input) { uint tag; - while (input.ReadTag(out tag)) { + while ((tag = input.ReadTag()) != 0) { switch(tag) { - case 0: - throw pb::InvalidProtocolBufferException.InvalidTag(); default: if (pb::WireFormat.IsEndGroupTag(tag)) { return; @@ -221,10 +219,8 @@ namespace UnitTest.Issues.TestProtos { public void MergeFrom(pb::CodedInputStream input) { uint tag; - while (input.ReadTag(out tag)) { + while ((tag = input.ReadTag()) != 0) { switch(tag) { - case 0: - throw pb::InvalidProtocolBufferException.InvalidTag(); default: if (pb::WireFormat.IsEndGroupTag(tag)) { return; @@ -303,10 +299,8 @@ namespace UnitTest.Issues.TestProtos { public void MergeFrom(pb::CodedInputStream input) { uint tag; - while (input.ReadTag(out tag)) { + while ((tag = input.ReadTag()) != 0) { switch(tag) { - case 0: - throw pb::InvalidProtocolBufferException.InvalidTag(); default: if (pb::WireFormat.IsEndGroupTag(tag)) { return; @@ -444,10 +438,8 @@ namespace UnitTest.Issues.TestProtos { public void MergeFrom(pb::CodedInputStream input) { uint tag; - while (input.ReadTag(out tag)) { + while ((tag = input.ReadTag()) != 0) { switch(tag) { - case 0: - throw pb::InvalidProtocolBufferException.InvalidTag(); default: if (pb::WireFormat.IsEndGroupTag(tag)) { return; @@ -539,10 +531,8 @@ namespace UnitTest.Issues.TestProtos { public void MergeFrom(pb::CodedInputStream input) { uint tag; - while (input.ReadTag(out tag)) { + while ((tag = input.ReadTag()) != 0) { switch(tag) { - case 0: - throw pb::InvalidProtocolBufferException.InvalidTag(); default: if (pb::WireFormat.IsEndGroupTag(tag)) { return; @@ -737,10 +727,8 @@ namespace UnitTest.Issues.TestProtos { public void MergeFrom(pb::CodedInputStream input) { uint tag; - while (input.ReadTag(out tag)) { + while ((tag = input.ReadTag()) != 0) { switch(tag) { - case 0: - throw pb::InvalidProtocolBufferException.InvalidTag(); default: if (pb::WireFormat.IsEndGroupTag(tag)) { return; @@ -869,10 +857,8 @@ namespace UnitTest.Issues.TestProtos { public void MergeFrom(pb::CodedInputStream input) { uint tag; - while (input.ReadTag(out tag)) { + while ((tag = input.ReadTag()) != 0) { switch(tag) { - case 0: - throw pb::InvalidProtocolBufferException.InvalidTag(); default: if (pb::WireFormat.IsEndGroupTag(tag)) { return; @@ -998,10 +984,8 @@ namespace UnitTest.Issues.TestProtos { public void MergeFrom(pb::CodedInputStream input) { uint tag; - while (input.ReadTag(out tag)) { + while ((tag = input.ReadTag()) != 0) { switch(tag) { - case 0: - throw pb::InvalidProtocolBufferException.InvalidTag(); default: if (pb::WireFormat.IsEndGroupTag(tag)) { return; @@ -1088,10 +1072,8 @@ namespace UnitTest.Issues.TestProtos { public void MergeFrom(pb::CodedInputStream input) { uint tag; - while (input.ReadTag(out tag)) { + while ((tag = input.ReadTag()) != 0) { switch(tag) { - case 0: - throw pb::InvalidProtocolBufferException.InvalidTag(); default: if (pb::WireFormat.IsEndGroupTag(tag)) { return; @@ -1358,10 +1340,8 @@ namespace UnitTest.Issues.TestProtos { public void MergeFrom(pb::CodedInputStream input) { uint tag; - while (input.ReadTag(out tag)) { + while ((tag = input.ReadTag()) != 0) { switch(tag) { - case 0: - throw pb::InvalidProtocolBufferException.InvalidTag(); default: if (pb::WireFormat.IsEndGroupTag(tag)) { return; diff --git a/csharp/src/Google.Protobuf.Test/TestProtos/UnittestProto3.cs b/csharp/src/Google.Protobuf.Test/TestProtos/UnittestProto3.cs index 9b4501c5..58e5be65 100644 --- a/csharp/src/Google.Protobuf.Test/TestProtos/UnittestProto3.cs +++ b/csharp/src/Google.Protobuf.Test/TestProtos/UnittestProto3.cs @@ -1208,10 +1208,8 @@ namespace Google.Protobuf.TestProtos { public void MergeFrom(pb::CodedInputStream input) { uint tag; - while (input.ReadTag(out tag)) { + while ((tag = input.ReadTag()) != 0) { switch(tag) { - case 0: - throw pb::InvalidProtocolBufferException.InvalidTag(); default: if (pb::WireFormat.IsEndGroupTag(tag)) { return; @@ -1545,10 +1543,8 @@ namespace Google.Protobuf.TestProtos { public void MergeFrom(pb::CodedInputStream input) { uint tag; - while (input.ReadTag(out tag)) { + while ((tag = input.ReadTag()) != 0) { switch(tag) { - case 0: - throw pb::InvalidProtocolBufferException.InvalidTag(); default: if (pb::WireFormat.IsEndGroupTag(tag)) { return; @@ -1699,10 +1695,8 @@ namespace Google.Protobuf.TestProtos { public void MergeFrom(pb::CodedInputStream input) { uint tag; - while (input.ReadTag(out tag)) { + while ((tag = input.ReadTag()) != 0) { switch(tag) { - case 0: - throw pb::InvalidProtocolBufferException.InvalidTag(); default: if (pb::WireFormat.IsEndGroupTag(tag)) { return; @@ -1821,10 +1815,8 @@ namespace Google.Protobuf.TestProtos { public void MergeFrom(pb::CodedInputStream input) { uint tag; - while (input.ReadTag(out tag)) { + while ((tag = input.ReadTag()) != 0) { switch(tag) { - case 0: - throw pb::InvalidProtocolBufferException.InvalidTag(); default: if (pb::WireFormat.IsEndGroupTag(tag)) { return; @@ -1928,10 +1920,8 @@ namespace Google.Protobuf.TestProtos { public void MergeFrom(pb::CodedInputStream input) { uint tag; - while (input.ReadTag(out tag)) { + while ((tag = input.ReadTag()) != 0) { switch(tag) { - case 0: - throw pb::InvalidProtocolBufferException.InvalidTag(); default: if (pb::WireFormat.IsEndGroupTag(tag)) { return; @@ -2013,10 +2003,8 @@ namespace Google.Protobuf.TestProtos { public void MergeFrom(pb::CodedInputStream input) { uint tag; - while (input.ReadTag(out tag)) { + while ((tag = input.ReadTag()) != 0) { switch(tag) { - case 0: - throw pb::InvalidProtocolBufferException.InvalidTag(); default: if (pb::WireFormat.IsEndGroupTag(tag)) { return; @@ -2119,10 +2107,8 @@ namespace Google.Protobuf.TestProtos { public void MergeFrom(pb::CodedInputStream input) { uint tag; - while (input.ReadTag(out tag)) { + while ((tag = input.ReadTag()) != 0) { switch(tag) { - case 0: - throw pb::InvalidProtocolBufferException.InvalidTag(); default: if (pb::WireFormat.IsEndGroupTag(tag)) { return; @@ -2251,10 +2237,8 @@ namespace Google.Protobuf.TestProtos { public void MergeFrom(pb::CodedInputStream input) { uint tag; - while (input.ReadTag(out tag)) { + while ((tag = input.ReadTag()) != 0) { switch(tag) { - case 0: - throw pb::InvalidProtocolBufferException.InvalidTag(); default: if (pb::WireFormat.IsEndGroupTag(tag)) { return; @@ -2387,10 +2371,8 @@ namespace Google.Protobuf.TestProtos { public void MergeFrom(pb::CodedInputStream input) { uint tag; - while (input.ReadTag(out tag)) { + while ((tag = input.ReadTag()) != 0) { switch(tag) { - case 0: - throw pb::InvalidProtocolBufferException.InvalidTag(); default: if (pb::WireFormat.IsEndGroupTag(tag)) { return; @@ -2504,10 +2486,8 @@ namespace Google.Protobuf.TestProtos { public void MergeFrom(pb::CodedInputStream input) { uint tag; - while (input.ReadTag(out tag)) { + while ((tag = input.ReadTag()) != 0) { switch(tag) { - case 0: - throw pb::InvalidProtocolBufferException.InvalidTag(); default: if (pb::WireFormat.IsEndGroupTag(tag)) { return; @@ -2639,10 +2619,8 @@ namespace Google.Protobuf.TestProtos { public void MergeFrom(pb::CodedInputStream input) { uint tag; - while (input.ReadTag(out tag)) { + while ((tag = input.ReadTag()) != 0) { switch(tag) { - case 0: - throw pb::InvalidProtocolBufferException.InvalidTag(); default: if (pb::WireFormat.IsEndGroupTag(tag)) { return; @@ -2878,10 +2856,8 @@ namespace Google.Protobuf.TestProtos { public void MergeFrom(pb::CodedInputStream input) { uint tag; - while (input.ReadTag(out tag)) { + while ((tag = input.ReadTag()) != 0) { switch(tag) { - case 0: - throw pb::InvalidProtocolBufferException.InvalidTag(); default: if (pb::WireFormat.IsEndGroupTag(tag)) { return; @@ -3087,10 +3063,8 @@ namespace Google.Protobuf.TestProtos { public void MergeFrom(pb::CodedInputStream input) { uint tag; - while (input.ReadTag(out tag)) { + while ((tag = input.ReadTag()) != 0) { switch(tag) { - case 0: - throw pb::InvalidProtocolBufferException.InvalidTag(); default: if (pb::WireFormat.IsEndGroupTag(tag)) { return; @@ -3232,10 +3206,8 @@ namespace Google.Protobuf.TestProtos { public void MergeFrom(pb::CodedInputStream input) { uint tag; - while (input.ReadTag(out tag)) { + while ((tag = input.ReadTag()) != 0) { switch(tag) { - case 0: - throw pb::InvalidProtocolBufferException.InvalidTag(); default: if (pb::WireFormat.IsEndGroupTag(tag)) { return; @@ -3348,10 +3320,8 @@ namespace Google.Protobuf.TestProtos { public void MergeFrom(pb::CodedInputStream input) { uint tag; - while (input.ReadTag(out tag)) { + while ((tag = input.ReadTag()) != 0) { switch(tag) { - case 0: - throw pb::InvalidProtocolBufferException.InvalidTag(); default: if (pb::WireFormat.IsEndGroupTag(tag)) { return; @@ -3455,10 +3425,8 @@ namespace Google.Protobuf.TestProtos { public void MergeFrom(pb::CodedInputStream input) { uint tag; - while (input.ReadTag(out tag)) { + while ((tag = input.ReadTag()) != 0) { switch(tag) { - case 0: - throw pb::InvalidProtocolBufferException.InvalidTag(); default: if (pb::WireFormat.IsEndGroupTag(tag)) { return; @@ -3554,10 +3522,8 @@ namespace Google.Protobuf.TestProtos { public void MergeFrom(pb::CodedInputStream input) { uint tag; - while (input.ReadTag(out tag)) { + while ((tag = input.ReadTag()) != 0) { switch(tag) { - case 0: - throw pb::InvalidProtocolBufferException.InvalidTag(); default: if (pb::WireFormat.IsEndGroupTag(tag)) { return; @@ -3661,10 +3627,8 @@ namespace Google.Protobuf.TestProtos { public void MergeFrom(pb::CodedInputStream input) { uint tag; - while (input.ReadTag(out tag)) { + while ((tag = input.ReadTag()) != 0) { switch(tag) { - case 0: - throw pb::InvalidProtocolBufferException.InvalidTag(); default: if (pb::WireFormat.IsEndGroupTag(tag)) { return; @@ -3768,10 +3732,8 @@ namespace Google.Protobuf.TestProtos { public void MergeFrom(pb::CodedInputStream input) { uint tag; - while (input.ReadTag(out tag)) { + while ((tag = input.ReadTag()) != 0) { switch(tag) { - case 0: - throw pb::InvalidProtocolBufferException.InvalidTag(); default: if (pb::WireFormat.IsEndGroupTag(tag)) { return; @@ -3875,10 +3837,8 @@ namespace Google.Protobuf.TestProtos { public void MergeFrom(pb::CodedInputStream input) { uint tag; - while (input.ReadTag(out tag)) { + while ((tag = input.ReadTag()) != 0) { switch(tag) { - case 0: - throw pb::InvalidProtocolBufferException.InvalidTag(); default: if (pb::WireFormat.IsEndGroupTag(tag)) { return; @@ -3982,10 +3942,8 @@ namespace Google.Protobuf.TestProtos { public void MergeFrom(pb::CodedInputStream input) { uint tag; - while (input.ReadTag(out tag)) { + while ((tag = input.ReadTag()) != 0) { switch(tag) { - case 0: - throw pb::InvalidProtocolBufferException.InvalidTag(); default: if (pb::WireFormat.IsEndGroupTag(tag)) { return; @@ -4089,10 +4047,8 @@ namespace Google.Protobuf.TestProtos { public void MergeFrom(pb::CodedInputStream input) { uint tag; - while (input.ReadTag(out tag)) { + while ((tag = input.ReadTag()) != 0) { switch(tag) { - case 0: - throw pb::InvalidProtocolBufferException.InvalidTag(); default: if (pb::WireFormat.IsEndGroupTag(tag)) { return; @@ -4196,10 +4152,8 @@ namespace Google.Protobuf.TestProtos { public void MergeFrom(pb::CodedInputStream input) { uint tag; - while (input.ReadTag(out tag)) { + while ((tag = input.ReadTag()) != 0) { switch(tag) { - case 0: - throw pb::InvalidProtocolBufferException.InvalidTag(); default: if (pb::WireFormat.IsEndGroupTag(tag)) { return; @@ -4303,10 +4257,8 @@ namespace Google.Protobuf.TestProtos { public void MergeFrom(pb::CodedInputStream input) { uint tag; - while (input.ReadTag(out tag)) { + while ((tag = input.ReadTag()) != 0) { switch(tag) { - case 0: - throw pb::InvalidProtocolBufferException.InvalidTag(); default: if (pb::WireFormat.IsEndGroupTag(tag)) { return; @@ -4483,10 +4435,8 @@ namespace Google.Protobuf.TestProtos { public void MergeFrom(pb::CodedInputStream input) { uint tag; - while (input.ReadTag(out tag)) { + while ((tag = input.ReadTag()) != 0) { switch(tag) { - case 0: - throw pb::InvalidProtocolBufferException.InvalidTag(); default: if (pb::WireFormat.IsEndGroupTag(tag)) { return; @@ -4777,10 +4727,8 @@ namespace Google.Protobuf.TestProtos { public void MergeFrom(pb::CodedInputStream input) { uint tag; - while (input.ReadTag(out tag)) { + while ((tag = input.ReadTag()) != 0) { switch(tag) { - case 0: - throw pb::InvalidProtocolBufferException.InvalidTag(); default: if (pb::WireFormat.IsEndGroupTag(tag)) { return; @@ -5124,10 +5072,8 @@ namespace Google.Protobuf.TestProtos { public void MergeFrom(pb::CodedInputStream input) { uint tag; - while (input.ReadTag(out tag)) { + while ((tag = input.ReadTag()) != 0) { switch(tag) { - case 0: - throw pb::InvalidProtocolBufferException.InvalidTag(); default: if (pb::WireFormat.IsEndGroupTag(tag)) { return; @@ -5359,10 +5305,8 @@ namespace Google.Protobuf.TestProtos { public void MergeFrom(pb::CodedInputStream input) { uint tag; - while (input.ReadTag(out tag)) { + while ((tag = input.ReadTag()) != 0) { switch(tag) { - case 0: - throw pb::InvalidProtocolBufferException.InvalidTag(); default: if (pb::WireFormat.IsEndGroupTag(tag)) { return; @@ -5492,10 +5436,8 @@ namespace Google.Protobuf.TestProtos { public void MergeFrom(pb::CodedInputStream input) { uint tag; - while (input.ReadTag(out tag)) { + while ((tag = input.ReadTag()) != 0) { switch(tag) { - case 0: - throw pb::InvalidProtocolBufferException.InvalidTag(); default: if (pb::WireFormat.IsEndGroupTag(tag)) { return; @@ -5577,10 +5519,8 @@ namespace Google.Protobuf.TestProtos { public void MergeFrom(pb::CodedInputStream input) { uint tag; - while (input.ReadTag(out tag)) { + while ((tag = input.ReadTag()) != 0) { switch(tag) { - case 0: - throw pb::InvalidProtocolBufferException.InvalidTag(); default: if (pb::WireFormat.IsEndGroupTag(tag)) { return; @@ -5658,10 +5598,8 @@ namespace Google.Protobuf.TestProtos { public void MergeFrom(pb::CodedInputStream input) { uint tag; - while (input.ReadTag(out tag)) { + while ((tag = input.ReadTag()) != 0) { switch(tag) { - case 0: - throw pb::InvalidProtocolBufferException.InvalidTag(); default: if (pb::WireFormat.IsEndGroupTag(tag)) { return; @@ -5739,10 +5677,8 @@ namespace Google.Protobuf.TestProtos { public void MergeFrom(pb::CodedInputStream input) { uint tag; - while (input.ReadTag(out tag)) { + while ((tag = input.ReadTag()) != 0) { switch(tag) { - case 0: - throw pb::InvalidProtocolBufferException.InvalidTag(); default: if (pb::WireFormat.IsEndGroupTag(tag)) { return; @@ -5820,10 +5756,8 @@ namespace Google.Protobuf.TestProtos { public void MergeFrom(pb::CodedInputStream input) { uint tag; - while (input.ReadTag(out tag)) { + while ((tag = input.ReadTag()) != 0) { switch(tag) { - case 0: - throw pb::InvalidProtocolBufferException.InvalidTag(); default: if (pb::WireFormat.IsEndGroupTag(tag)) { return; @@ -5901,10 +5835,8 @@ namespace Google.Protobuf.TestProtos { public void MergeFrom(pb::CodedInputStream input) { uint tag; - while (input.ReadTag(out tag)) { + while ((tag = input.ReadTag()) != 0) { switch(tag) { - case 0: - throw pb::InvalidProtocolBufferException.InvalidTag(); default: if (pb::WireFormat.IsEndGroupTag(tag)) { return; @@ -5982,10 +5914,8 @@ namespace Google.Protobuf.TestProtos { public void MergeFrom(pb::CodedInputStream input) { uint tag; - while (input.ReadTag(out tag)) { + while ((tag = input.ReadTag()) != 0) { switch(tag) { - case 0: - throw pb::InvalidProtocolBufferException.InvalidTag(); default: if (pb::WireFormat.IsEndGroupTag(tag)) { return; diff --git a/csharp/src/Google.Protobuf.Test/TestProtos/UnittestWellKnownTypes.cs b/csharp/src/Google.Protobuf.Test/TestProtos/UnittestWellKnownTypes.cs index b05c80c1..0840fa27 100644 --- a/csharp/src/Google.Protobuf.Test/TestProtos/UnittestWellKnownTypes.cs +++ b/csharp/src/Google.Protobuf.Test/TestProtos/UnittestWellKnownTypes.cs @@ -676,10 +676,8 @@ namespace Google.Protobuf.TestProtos { public void MergeFrom(pb::CodedInputStream input) { uint tag; - while (input.ReadTag(out tag)) { + while ((tag = input.ReadTag()) != 0) { switch(tag) { - case 0: - throw pb::InvalidProtocolBufferException.InvalidTag(); default: if (pb::WireFormat.IsEndGroupTag(tag)) { return; @@ -1135,10 +1133,8 @@ namespace Google.Protobuf.TestProtos { public void MergeFrom(pb::CodedInputStream input) { uint tag; - while (input.ReadTag(out tag)) { + while ((tag = input.ReadTag()) != 0) { switch(tag) { - case 0: - throw pb::InvalidProtocolBufferException.InvalidTag(); default: if (pb::WireFormat.IsEndGroupTag(tag)) { return; @@ -1758,10 +1754,8 @@ namespace Google.Protobuf.TestProtos { public void MergeFrom(pb::CodedInputStream input) { uint tag; - while (input.ReadTag(out tag)) { + while ((tag = input.ReadTag()) != 0) { switch(tag) { - case 0: - throw pb::InvalidProtocolBufferException.InvalidTag(); default: if (pb::WireFormat.IsEndGroupTag(tag)) { return; @@ -2208,10 +2202,8 @@ namespace Google.Protobuf.TestProtos { public void MergeFrom(pb::CodedInputStream input) { uint tag; - while (input.ReadTag(out tag)) { + while ((tag = input.ReadTag()) != 0) { switch(tag) { - case 0: - throw pb::InvalidProtocolBufferException.InvalidTag(); default: if (pb::WireFormat.IsEndGroupTag(tag)) { return; diff --git a/csharp/src/Google.Protobuf/Reflection/DescriptorProtoFile.cs b/csharp/src/Google.Protobuf/Reflection/DescriptorProtoFile.cs index a12e70f8..d66bdb80 100644 --- a/csharp/src/Google.Protobuf/Reflection/DescriptorProtoFile.cs +++ b/csharp/src/Google.Protobuf/Reflection/DescriptorProtoFile.cs @@ -239,10 +239,8 @@ namespace Google.Protobuf.Reflection { public void MergeFrom(pb::CodedInputStream input) { uint tag; - while (input.ReadTag(out tag)) { + while ((tag = input.ReadTag()) != 0) { switch(tag) { - case 0: - throw pb::InvalidProtocolBufferException.InvalidTag(); default: if (pb::WireFormat.IsEndGroupTag(tag)) { return; @@ -538,10 +536,8 @@ namespace Google.Protobuf.Reflection { public void MergeFrom(pb::CodedInputStream input) { uint tag; - while (input.ReadTag(out tag)) { + while ((tag = input.ReadTag()) != 0) { switch(tag) { - case 0: - throw pb::InvalidProtocolBufferException.InvalidTag(); default: if (pb::WireFormat.IsEndGroupTag(tag)) { return; @@ -834,10 +830,8 @@ namespace Google.Protobuf.Reflection { public void MergeFrom(pb::CodedInputStream input) { uint tag; - while (input.ReadTag(out tag)) { + while ((tag = input.ReadTag()) != 0) { switch(tag) { - case 0: - throw pb::InvalidProtocolBufferException.InvalidTag(); default: if (pb::WireFormat.IsEndGroupTag(tag)) { return; @@ -1003,10 +997,8 @@ namespace Google.Protobuf.Reflection { public void MergeFrom(pb::CodedInputStream input) { uint tag; - while (input.ReadTag(out tag)) { + while ((tag = input.ReadTag()) != 0) { switch(tag) { - case 0: - throw pb::InvalidProtocolBufferException.InvalidTag(); default: if (pb::WireFormat.IsEndGroupTag(tag)) { return; @@ -1136,10 +1128,8 @@ namespace Google.Protobuf.Reflection { public void MergeFrom(pb::CodedInputStream input) { uint tag; - while (input.ReadTag(out tag)) { + while ((tag = input.ReadTag()) != 0) { switch(tag) { - case 0: - throw pb::InvalidProtocolBufferException.InvalidTag(); default: if (pb::WireFormat.IsEndGroupTag(tag)) { return; @@ -1431,10 +1421,8 @@ namespace Google.Protobuf.Reflection { public void MergeFrom(pb::CodedInputStream input) { uint tag; - while (input.ReadTag(out tag)) { + while ((tag = input.ReadTag()) != 0) { switch(tag) { - case 0: - throw pb::InvalidProtocolBufferException.InvalidTag(); default: if (pb::WireFormat.IsEndGroupTag(tag)) { return; @@ -1606,10 +1594,8 @@ namespace Google.Protobuf.Reflection { public void MergeFrom(pb::CodedInputStream input) { uint tag; - while (input.ReadTag(out tag)) { + while ((tag = input.ReadTag()) != 0) { switch(tag) { - case 0: - throw pb::InvalidProtocolBufferException.InvalidTag(); default: if (pb::WireFormat.IsEndGroupTag(tag)) { return; @@ -1752,10 +1738,8 @@ namespace Google.Protobuf.Reflection { public void MergeFrom(pb::CodedInputStream input) { uint tag; - while (input.ReadTag(out tag)) { + while ((tag = input.ReadTag()) != 0) { switch(tag) { - case 0: - throw pb::InvalidProtocolBufferException.InvalidTag(); default: if (pb::WireFormat.IsEndGroupTag(tag)) { return; @@ -1917,10 +1901,8 @@ namespace Google.Protobuf.Reflection { public void MergeFrom(pb::CodedInputStream input) { uint tag; - while (input.ReadTag(out tag)) { + while ((tag = input.ReadTag()) != 0) { switch(tag) { - case 0: - throw pb::InvalidProtocolBufferException.InvalidTag(); default: if (pb::WireFormat.IsEndGroupTag(tag)) { return; @@ -2074,10 +2056,8 @@ namespace Google.Protobuf.Reflection { public void MergeFrom(pb::CodedInputStream input) { uint tag; - while (input.ReadTag(out tag)) { + while ((tag = input.ReadTag()) != 0) { switch(tag) { - case 0: - throw pb::InvalidProtocolBufferException.InvalidTag(); default: if (pb::WireFormat.IsEndGroupTag(tag)) { return; @@ -2305,10 +2285,8 @@ namespace Google.Protobuf.Reflection { public void MergeFrom(pb::CodedInputStream input) { uint tag; - while (input.ReadTag(out tag)) { + while ((tag = input.ReadTag()) != 0) { switch(tag) { - case 0: - throw pb::InvalidProtocolBufferException.InvalidTag(); default: if (pb::WireFormat.IsEndGroupTag(tag)) { return; @@ -2735,10 +2713,8 @@ namespace Google.Protobuf.Reflection { public void MergeFrom(pb::CodedInputStream input) { uint tag; - while (input.ReadTag(out tag)) { + while ((tag = input.ReadTag()) != 0) { switch(tag) { - case 0: - throw pb::InvalidProtocolBufferException.InvalidTag(); default: if (pb::WireFormat.IsEndGroupTag(tag)) { return; @@ -2990,10 +2966,8 @@ namespace Google.Protobuf.Reflection { public void MergeFrom(pb::CodedInputStream input) { uint tag; - while (input.ReadTag(out tag)) { + while ((tag = input.ReadTag()) != 0) { switch(tag) { - case 0: - throw pb::InvalidProtocolBufferException.InvalidTag(); default: if (pb::WireFormat.IsEndGroupTag(tag)) { return; @@ -3237,10 +3211,8 @@ namespace Google.Protobuf.Reflection { public void MergeFrom(pb::CodedInputStream input) { uint tag; - while (input.ReadTag(out tag)) { + while ((tag = input.ReadTag()) != 0) { switch(tag) { - case 0: - throw pb::InvalidProtocolBufferException.InvalidTag(); default: if (pb::WireFormat.IsEndGroupTag(tag)) { return; @@ -3422,10 +3394,8 @@ namespace Google.Protobuf.Reflection { public void MergeFrom(pb::CodedInputStream input) { uint tag; - while (input.ReadTag(out tag)) { + while ((tag = input.ReadTag()) != 0) { switch(tag) { - case 0: - throw pb::InvalidProtocolBufferException.InvalidTag(); default: if (pb::WireFormat.IsEndGroupTag(tag)) { return; @@ -3551,10 +3521,8 @@ namespace Google.Protobuf.Reflection { public void MergeFrom(pb::CodedInputStream input) { uint tag; - while (input.ReadTag(out tag)) { + while ((tag = input.ReadTag()) != 0) { switch(tag) { - case 0: - throw pb::InvalidProtocolBufferException.InvalidTag(); default: if (pb::WireFormat.IsEndGroupTag(tag)) { return; @@ -3676,10 +3644,8 @@ namespace Google.Protobuf.Reflection { public void MergeFrom(pb::CodedInputStream input) { uint tag; - while (input.ReadTag(out tag)) { + while ((tag = input.ReadTag()) != 0) { switch(tag) { - case 0: - throw pb::InvalidProtocolBufferException.InvalidTag(); default: if (pb::WireFormat.IsEndGroupTag(tag)) { return; @@ -3801,10 +3767,8 @@ namespace Google.Protobuf.Reflection { public void MergeFrom(pb::CodedInputStream input) { uint tag; - while (input.ReadTag(out tag)) { + while ((tag = input.ReadTag()) != 0) { switch(tag) { - case 0: - throw pb::InvalidProtocolBufferException.InvalidTag(); default: if (pb::WireFormat.IsEndGroupTag(tag)) { return; @@ -4036,10 +4000,8 @@ namespace Google.Protobuf.Reflection { public void MergeFrom(pb::CodedInputStream input) { uint tag; - while (input.ReadTag(out tag)) { + while ((tag = input.ReadTag()) != 0) { switch(tag) { - case 0: - throw pb::InvalidProtocolBufferException.InvalidTag(); default: if (pb::WireFormat.IsEndGroupTag(tag)) { return; @@ -4190,10 +4152,8 @@ namespace Google.Protobuf.Reflection { public void MergeFrom(pb::CodedInputStream input) { uint tag; - while (input.ReadTag(out tag)) { + while ((tag = input.ReadTag()) != 0) { switch(tag) { - case 0: - throw pb::InvalidProtocolBufferException.InvalidTag(); default: if (pb::WireFormat.IsEndGroupTag(tag)) { return; @@ -4298,10 +4258,8 @@ namespace Google.Protobuf.Reflection { public void MergeFrom(pb::CodedInputStream input) { uint tag; - while (input.ReadTag(out tag)) { + while ((tag = input.ReadTag()) != 0) { switch(tag) { - case 0: - throw pb::InvalidProtocolBufferException.InvalidTag(); default: if (pb::WireFormat.IsEndGroupTag(tag)) { return; @@ -4470,10 +4428,8 @@ namespace Google.Protobuf.Reflection { public void MergeFrom(pb::CodedInputStream input) { uint tag; - while (input.ReadTag(out tag)) { + while ((tag = input.ReadTag()) != 0) { switch(tag) { - case 0: - throw pb::InvalidProtocolBufferException.InvalidTag(); default: if (pb::WireFormat.IsEndGroupTag(tag)) { return; diff --git a/csharp/src/Google.Protobuf/WellKnownTypes/Any.cs b/csharp/src/Google.Protobuf/WellKnownTypes/Any.cs index 4352c16a..9fc653b0 100644 --- a/csharp/src/Google.Protobuf/WellKnownTypes/Any.cs +++ b/csharp/src/Google.Protobuf/WellKnownTypes/Any.cs @@ -147,10 +147,8 @@ namespace Google.Protobuf.WellKnownTypes { public void MergeFrom(pb::CodedInputStream input) { uint tag; - while (input.ReadTag(out tag)) { + while ((tag = input.ReadTag()) != 0) { switch(tag) { - case 0: - throw pb::InvalidProtocolBufferException.InvalidTag(); default: if (pb::WireFormat.IsEndGroupTag(tag)) { return; diff --git a/csharp/src/Google.Protobuf/WellKnownTypes/Api.cs b/csharp/src/Google.Protobuf/WellKnownTypes/Api.cs index a5d48166..8a94e7b0 100644 --- a/csharp/src/Google.Protobuf/WellKnownTypes/Api.cs +++ b/csharp/src/Google.Protobuf/WellKnownTypes/Api.cs @@ -210,10 +210,8 @@ namespace Google.Protobuf.WellKnownTypes { public void MergeFrom(pb::CodedInputStream input) { uint tag; - while (input.ReadTag(out tag)) { + while ((tag = input.ReadTag()) != 0) { switch(tag) { - case 0: - throw pb::InvalidProtocolBufferException.InvalidTag(); default: if (pb::WireFormat.IsEndGroupTag(tag)) { return; @@ -438,10 +436,8 @@ namespace Google.Protobuf.WellKnownTypes { public void MergeFrom(pb::CodedInputStream input) { uint tag; - while (input.ReadTag(out tag)) { + while ((tag = input.ReadTag()) != 0) { switch(tag) { - case 0: - throw pb::InvalidProtocolBufferException.InvalidTag(); default: if (pb::WireFormat.IsEndGroupTag(tag)) { return; diff --git a/csharp/src/Google.Protobuf/WellKnownTypes/Duration.cs b/csharp/src/Google.Protobuf/WellKnownTypes/Duration.cs index 1ca33dce..d74636d4 100644 --- a/csharp/src/Google.Protobuf/WellKnownTypes/Duration.cs +++ b/csharp/src/Google.Protobuf/WellKnownTypes/Duration.cs @@ -148,10 +148,8 @@ namespace Google.Protobuf.WellKnownTypes { public void MergeFrom(pb::CodedInputStream input) { uint tag; - while (input.ReadTag(out tag)) { + while ((tag = input.ReadTag()) != 0) { switch(tag) { - case 0: - throw pb::InvalidProtocolBufferException.InvalidTag(); default: if (pb::WireFormat.IsEndGroupTag(tag)) { return; diff --git a/csharp/src/Google.Protobuf/WellKnownTypes/Empty.cs b/csharp/src/Google.Protobuf/WellKnownTypes/Empty.cs index 0d948e38..0f1d7f50 100644 --- a/csharp/src/Google.Protobuf/WellKnownTypes/Empty.cs +++ b/csharp/src/Google.Protobuf/WellKnownTypes/Empty.cs @@ -103,10 +103,8 @@ namespace Google.Protobuf.WellKnownTypes { public void MergeFrom(pb::CodedInputStream input) { uint tag; - while (input.ReadTag(out tag)) { + while ((tag = input.ReadTag()) != 0) { switch(tag) { - case 0: - throw pb::InvalidProtocolBufferException.InvalidTag(); default: if (pb::WireFormat.IsEndGroupTag(tag)) { return; diff --git a/csharp/src/Google.Protobuf/WellKnownTypes/FieldMask.cs b/csharp/src/Google.Protobuf/WellKnownTypes/FieldMask.cs index 58dbc7fa..9bd47a96 100644 --- a/csharp/src/Google.Protobuf/WellKnownTypes/FieldMask.cs +++ b/csharp/src/Google.Protobuf/WellKnownTypes/FieldMask.cs @@ -117,10 +117,8 @@ namespace Google.Protobuf.WellKnownTypes { public void MergeFrom(pb::CodedInputStream input) { uint tag; - while (input.ReadTag(out tag)) { + while ((tag = input.ReadTag()) != 0) { switch(tag) { - case 0: - throw pb::InvalidProtocolBufferException.InvalidTag(); default: if (pb::WireFormat.IsEndGroupTag(tag)) { return; diff --git a/csharp/src/Google.Protobuf/WellKnownTypes/SourceContext.cs b/csharp/src/Google.Protobuf/WellKnownTypes/SourceContext.cs index 5566b5ce..ae79884f 100644 --- a/csharp/src/Google.Protobuf/WellKnownTypes/SourceContext.cs +++ b/csharp/src/Google.Protobuf/WellKnownTypes/SourceContext.cs @@ -126,10 +126,8 @@ namespace Google.Protobuf.WellKnownTypes { public void MergeFrom(pb::CodedInputStream input) { uint tag; - while (input.ReadTag(out tag)) { + while ((tag = input.ReadTag()) != 0) { switch(tag) { - case 0: - throw pb::InvalidProtocolBufferException.InvalidTag(); default: if (pb::WireFormat.IsEndGroupTag(tag)) { return; diff --git a/csharp/src/Google.Protobuf/WellKnownTypes/Struct.cs b/csharp/src/Google.Protobuf/WellKnownTypes/Struct.cs index 72bd16d4..ea8b1055 100644 --- a/csharp/src/Google.Protobuf/WellKnownTypes/Struct.cs +++ b/csharp/src/Google.Protobuf/WellKnownTypes/Struct.cs @@ -136,10 +136,8 @@ namespace Google.Protobuf.WellKnownTypes { public void MergeFrom(pb::CodedInputStream input) { uint tag; - while (input.ReadTag(out tag)) { + while ((tag = input.ReadTag()) != 0) { switch(tag) { - case 0: - throw pb::InvalidProtocolBufferException.InvalidTag(); default: if (pb::WireFormat.IsEndGroupTag(tag)) { return; @@ -391,10 +389,8 @@ namespace Google.Protobuf.WellKnownTypes { public void MergeFrom(pb::CodedInputStream input) { uint tag; - while (input.ReadTag(out tag)) { + while ((tag = input.ReadTag()) != 0) { switch(tag) { - case 0: - throw pb::InvalidProtocolBufferException.InvalidTag(); default: if (pb::WireFormat.IsEndGroupTag(tag)) { return; @@ -521,10 +517,8 @@ namespace Google.Protobuf.WellKnownTypes { public void MergeFrom(pb::CodedInputStream input) { uint tag; - while (input.ReadTag(out tag)) { + while ((tag = input.ReadTag()) != 0) { switch(tag) { - case 0: - throw pb::InvalidProtocolBufferException.InvalidTag(); default: if (pb::WireFormat.IsEndGroupTag(tag)) { return; diff --git a/csharp/src/Google.Protobuf/WellKnownTypes/Timestamp.cs b/csharp/src/Google.Protobuf/WellKnownTypes/Timestamp.cs index c3e5383e..89355bdc 100644 --- a/csharp/src/Google.Protobuf/WellKnownTypes/Timestamp.cs +++ b/csharp/src/Google.Protobuf/WellKnownTypes/Timestamp.cs @@ -148,10 +148,8 @@ namespace Google.Protobuf.WellKnownTypes { public void MergeFrom(pb::CodedInputStream input) { uint tag; - while (input.ReadTag(out tag)) { + while ((tag = input.ReadTag()) != 0) { switch(tag) { - case 0: - throw pb::InvalidProtocolBufferException.InvalidTag(); default: if (pb::WireFormat.IsEndGroupTag(tag)) { return; diff --git a/csharp/src/Google.Protobuf/WellKnownTypes/Type.cs b/csharp/src/Google.Protobuf/WellKnownTypes/Type.cs index 862caf82..36116a65 100644 --- a/csharp/src/Google.Protobuf/WellKnownTypes/Type.cs +++ b/csharp/src/Google.Protobuf/WellKnownTypes/Type.cs @@ -223,10 +223,8 @@ namespace Google.Protobuf.WellKnownTypes { public void MergeFrom(pb::CodedInputStream input) { uint tag; - while (input.ReadTag(out tag)) { + while ((tag = input.ReadTag()) != 0) { switch(tag) { - case 0: - throw pb::InvalidProtocolBufferException.InvalidTag(); default: if (pb::WireFormat.IsEndGroupTag(tag)) { return; @@ -495,10 +493,8 @@ namespace Google.Protobuf.WellKnownTypes { public void MergeFrom(pb::CodedInputStream input) { uint tag; - while (input.ReadTag(out tag)) { + while ((tag = input.ReadTag()) != 0) { switch(tag) { - case 0: - throw pb::InvalidProtocolBufferException.InvalidTag(); default: if (pb::WireFormat.IsEndGroupTag(tag)) { return; @@ -717,10 +713,8 @@ namespace Google.Protobuf.WellKnownTypes { public void MergeFrom(pb::CodedInputStream input) { uint tag; - while (input.ReadTag(out tag)) { + while ((tag = input.ReadTag()) != 0) { switch(tag) { - case 0: - throw pb::InvalidProtocolBufferException.InvalidTag(); default: if (pb::WireFormat.IsEndGroupTag(tag)) { return; @@ -875,10 +869,8 @@ namespace Google.Protobuf.WellKnownTypes { public void MergeFrom(pb::CodedInputStream input) { uint tag; - while (input.ReadTag(out tag)) { + while ((tag = input.ReadTag()) != 0) { switch(tag) { - case 0: - throw pb::InvalidProtocolBufferException.InvalidTag(); default: if (pb::WireFormat.IsEndGroupTag(tag)) { return; @@ -1015,10 +1007,8 @@ namespace Google.Protobuf.WellKnownTypes { public void MergeFrom(pb::CodedInputStream input) { uint tag; - while (input.ReadTag(out tag)) { + while ((tag = input.ReadTag()) != 0) { switch(tag) { - case 0: - throw pb::InvalidProtocolBufferException.InvalidTag(); default: if (pb::WireFormat.IsEndGroupTag(tag)) { return; diff --git a/csharp/src/Google.Protobuf/WellKnownTypes/Wrappers.cs b/csharp/src/Google.Protobuf/WellKnownTypes/Wrappers.cs index 2b3814cc..19ed599d 100644 --- a/csharp/src/Google.Protobuf/WellKnownTypes/Wrappers.cs +++ b/csharp/src/Google.Protobuf/WellKnownTypes/Wrappers.cs @@ -135,10 +135,8 @@ namespace Google.Protobuf.WellKnownTypes { public void MergeFrom(pb::CodedInputStream input) { uint tag; - while (input.ReadTag(out tag)) { + while ((tag = input.ReadTag()) != 0) { switch(tag) { - case 0: - throw pb::InvalidProtocolBufferException.InvalidTag(); default: if (pb::WireFormat.IsEndGroupTag(tag)) { return; @@ -242,10 +240,8 @@ namespace Google.Protobuf.WellKnownTypes { public void MergeFrom(pb::CodedInputStream input) { uint tag; - while (input.ReadTag(out tag)) { + while ((tag = input.ReadTag()) != 0) { switch(tag) { - case 0: - throw pb::InvalidProtocolBufferException.InvalidTag(); default: if (pb::WireFormat.IsEndGroupTag(tag)) { return; @@ -349,10 +345,8 @@ namespace Google.Protobuf.WellKnownTypes { public void MergeFrom(pb::CodedInputStream input) { uint tag; - while (input.ReadTag(out tag)) { + while ((tag = input.ReadTag()) != 0) { switch(tag) { - case 0: - throw pb::InvalidProtocolBufferException.InvalidTag(); default: if (pb::WireFormat.IsEndGroupTag(tag)) { return; @@ -456,10 +450,8 @@ namespace Google.Protobuf.WellKnownTypes { public void MergeFrom(pb::CodedInputStream input) { uint tag; - while (input.ReadTag(out tag)) { + while ((tag = input.ReadTag()) != 0) { switch(tag) { - case 0: - throw pb::InvalidProtocolBufferException.InvalidTag(); default: if (pb::WireFormat.IsEndGroupTag(tag)) { return; @@ -563,10 +555,8 @@ namespace Google.Protobuf.WellKnownTypes { public void MergeFrom(pb::CodedInputStream input) { uint tag; - while (input.ReadTag(out tag)) { + while ((tag = input.ReadTag()) != 0) { switch(tag) { - case 0: - throw pb::InvalidProtocolBufferException.InvalidTag(); default: if (pb::WireFormat.IsEndGroupTag(tag)) { return; @@ -670,10 +660,8 @@ namespace Google.Protobuf.WellKnownTypes { public void MergeFrom(pb::CodedInputStream input) { uint tag; - while (input.ReadTag(out tag)) { + while ((tag = input.ReadTag()) != 0) { switch(tag) { - case 0: - throw pb::InvalidProtocolBufferException.InvalidTag(); default: if (pb::WireFormat.IsEndGroupTag(tag)) { return; @@ -777,10 +765,8 @@ namespace Google.Protobuf.WellKnownTypes { public void MergeFrom(pb::CodedInputStream input) { uint tag; - while (input.ReadTag(out tag)) { + while ((tag = input.ReadTag()) != 0) { switch(tag) { - case 0: - throw pb::InvalidProtocolBufferException.InvalidTag(); default: if (pb::WireFormat.IsEndGroupTag(tag)) { return; @@ -884,10 +870,8 @@ namespace Google.Protobuf.WellKnownTypes { public void MergeFrom(pb::CodedInputStream input) { uint tag; - while (input.ReadTag(out tag)) { + while ((tag = input.ReadTag()) != 0) { switch(tag) { - case 0: - throw pb::InvalidProtocolBufferException.InvalidTag(); default: if (pb::WireFormat.IsEndGroupTag(tag)) { return; @@ -991,10 +975,8 @@ namespace Google.Protobuf.WellKnownTypes { public void MergeFrom(pb::CodedInputStream input) { uint tag; - while (input.ReadTag(out tag)) { + while ((tag = input.ReadTag()) != 0) { switch(tag) { - case 0: - throw pb::InvalidProtocolBufferException.InvalidTag(); default: if (pb::WireFormat.IsEndGroupTag(tag)) { return; -- cgit v1.2.3 From 38032688a7faf4eef2cac392b9e69697a202fe62 Mon Sep 17 00:00:00 2001 From: Jon Skeet Date: Wed, 5 Aug 2015 17:48:53 +0100 Subject: Make InvalidProtocolBufferException.InvalidTag internal. We don't need to expose the InvalidProtocolBufferException factory method now that the generated code doesn't throw the exception. --- csharp/src/Google.Protobuf/InvalidProtocolBufferException.cs | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/csharp/src/Google.Protobuf/InvalidProtocolBufferException.cs b/csharp/src/Google.Protobuf/InvalidProtocolBufferException.cs index bbba9b3b..6905a6a3 100644 --- a/csharp/src/Google.Protobuf/InvalidProtocolBufferException.cs +++ b/csharp/src/Google.Protobuf/InvalidProtocolBufferException.cs @@ -70,7 +70,7 @@ namespace Google.Protobuf /// /// Creates an exception for an error condition of an invalid tag being encountered. /// - public static InvalidProtocolBufferException InvalidTag() + internal static InvalidProtocolBufferException InvalidTag() { return new InvalidProtocolBufferException( "Protocol message contained an invalid tag (zero)."); -- cgit v1.2.3