aboutsummaryrefslogtreecommitdiff
path: root/csharp/src/Google.Protobuf/CodedInputStream.cs
Commit message (Collapse)AuthorAgeFilesLines
* Detect invalid tags with a field number of 0 in C#Jon Skeet2017-08-111-2/+2
| | | | | | | | Previously we only rejected the tag if the tag itself was 0, i.e. field=0, type=varint. The type doesn't matter: field 0 is always invalid. This removes the last of the C# conformance failures.
* Ensure leaveOpen is true when writing to a bufferJon Skeet2017-07-041-8/+9
| | | | | | | | Note that the compatibility tests have had to cahnge as well, to cope with internal changes. (The test project has access to internals in the main project.) Fixes #3209.
* Fixed out-of-date documentation for CodedInputStream.ReadEnum. (#1581)Jos Hickson2016-07-101-3/+1
|
* Implement IDisposable for CodedInputStream and CodedOutputStreamJon Skeet2016-02-291-5/+41
| | | | | This fixes issue #679 and issue #1282. (The .gitignore change is just around ncrunch; I can put it in a separate PR if you really want.)
* Validate that end-group tags match their corresponding start-group tagsJon Skeet2016-02-151-6/+26
| | | | | | | | This detects: - An end-group tag with the wrong field number (doesn't match the start-group field) - An end-group tag with no preceding start-group tag Fixes issue #688.
* Rename Preconditions to ProtoPreconditionsJon Skeet2016-02-041-3/+3
| | | | (Generated code changes in next commit.)
* Added documentation to generated code.Jon Skeet2015-09-291-1/+1
| | | | | | | | | | | There are now summaries for: - The Types nested class (which holds nested types) - The file descriptor class for each proto - The enum generated for each oneof (Also fixed two typos.) Generated code in next commit.
* More TODOs done.Jon Skeet2015-08-101-75/+85
| | | | | | - Removed a TODO without change in DescriptorPool.LookupSymbol - the TODOs were around performance, and this is only used during descriptor initialization - Make the CodedInputStream limits read-only, adding a static factory method for the rare cases when this is useful - Extracted IDeepCloneable into its own file.
* Tidying up - fix a bunch of TODOs and remove outdated ones.Jon Skeet2015-08-081-12/+13
|
* Address review comments.Jon Skeet2015-08-081-2/+2
|
* Skip groups properly.Jon Skeet2015-08-061-13/+42
| | | | | | | | | | | Now the generated code doesn't need to check for end group tags, as it will skip whole groups at a time. Currently it will ignore extraneous end group tags, which may or may not be a good thing. Renamed ConsumeLastField to SkipLastField as it felt more natural. Removed WireFormat.IsEndGroupTag as it's no longer useful. This mostly fixes issue 688. (Generated code changes coming in next commit.)
* Change ReadTag and PeekTag to just use 0 as a return value for "end of ↵Jon Skeet2015-08-051-32/+24
| | | | | | | | stream", rather than using an awkward out parameter. This simplifies quite a lot of code. Generated code in next commit.
* Validate that after reading a message, we've consumed as many bytes as we ↵Jon Skeet2015-08-051-0/+29
| | | | | | expected to. We should now have no conformance failures.
* Consume unknown fields when parsing.Jon Skeet2015-08-051-0/+33
| | | | | This is expected to be the cause of the conformance test failures. Generated code in next commit.
* Document everything, and turn on errors if we fail to document anything in ↵Jon Skeet2015-08-041-1/+1
| | | | the future.
* Expose Coded*Stream constructors directly.Jon Skeet2015-08-031-28/+11
|
* First pass at the big rename from ProtocolBuffers to Google.Protobuf.Jon Skeet2015-07-171-0/+1144
We'll see what I've missed when CI fails...