Jon Skeet
0dd5fffba3
Fix JSON parsing and formatting of NullValue in C#
...
The NullValue enum is typically used as part of the Value well-known type, but can be used elsewhere. In previous code, a NullValue field (other than in Value) would result in a JSON value of the string "NULL_VALUE"; it should instead be the null literal.
When parsing, we still accept "NULL_VALUE" as a valid value for NullValue - this new code being unable to parse old data, and comes for free anyway.
4 years ago
Jan Tattermusch
4f0afc7852
optimize WriteRawTag
5 years ago
Jan Tattermusch
2f16981638
optimize WriteVarint64
5 years ago
Jan Tattermusch
9d53fadcac
optimize WriteVarint32
5 years ago
Jan Tattermusch
9ca0877db1
optimize WriteRawBytes
5 years ago
Jan Tattermusch
80780bdffa
optimize WriteRawByte
5 years ago
Jan Tattermusch
6afd469fe0
optimize WriteFixed32 and WriteFixed64
5 years ago
Jan Tattermusch
17a4b181a0
optimize WriteString
5 years ago
Jan Tattermusch
d3557cab21
WriteFloat improvements
5 years ago
Jan Tattermusch
1f56e5e2a4
remove AggressiveInlining attribute from WritingPrimitives.cs
5 years ago
Joshua Haberman
f77065d4eb
Sync from Piper @316511779
...
PROTOBUF_SYNC_PIPER
5 years ago
Jan Tattermusch
468c3ba8c6
Speed up writing of messages with many fields
5 years ago
Jan Tattermusch
6a69690464
basic version of WriteMessagesBenchmark
5 years ago
Jon Skeet
1dae8fdd62
Add support for proto2 JSON parsing in C# conformance tests
5 years ago
Jon Skeet
ff70af6cfc
Changes how JSON formatting works for fields supporting presence
...
Fixes #7486 .
Note that this changes the behavior for message fields where
"WithFormatDefaultValues(true)" has been specified. This is
effectively fixing a bug, but will need to be noted in the release
notes.
Basically, FormatDefaultValues only affects fields that don't
support presence - most commonly, singular primitive non-optional
fields in proto3.
5 years ago
Jan Tattermusch
549dc9a412
optimize writing fixed32 and fixed64, fix benchmark
5 years ago
Jan Tattermusch
5eec497d3b
fix C# CompatibilityTests
5 years ago
Jan Tattermusch
e346fde63b
remove commented out code
5 years ago
Jan Tattermusch
c06812b0b2
address a few TODOs
5 years ago
Jan Tattermusch
19c0d73fb9
test WriteContext writing with multiple flushes
5 years ago
Jan Tattermusch
53708e2f15
test writing to a stackalloc buffer
5 years ago
Jan Tattermusch
e14a5c8fe6
address a few TODOs
5 years ago
Jan Tattermusch
43dcee2fa9
remove some todos
5 years ago
Jan Tattermusch
3375e251f9
optimize writing non-ascii strings
5 years ago
Jan Tattermusch
3dad187707
add benchmark for writing of NonAsciiStrings
5 years ago
Jan Tattermusch
8a2d5884bf
address review comments
5 years ago
Jan Tattermusch
a296413b5a
optimize WriteFloat
5 years ago
Jan Tattermusch
886c263a3c
initial version of write benchmarks
5 years ago
Jan Tattermusch
a6d1ed1712
annotate ByteString.Span and ByteString.Memory as SecuritySafeCritical
5 years ago
Jan Tattermusch
b2c94974b2
remove a TODO
5 years ago
Jan Tattermusch
56372898cf
test writing with different blocksizes
5 years ago
Jan Tattermusch
f9f92a6dd2
increase test coverage
5 years ago
Jan Tattermusch
94e64f2c0b
a bit more cleanup
5 years ago
Jan Tattermusch
ba61d76e52
simplify serialization to single span
5 years ago
Jan Tattermusch
b3cdba1cfd
increase test coverage
5 years ago
Jan Tattermusch
7bfaaba534
cleanup coded output stream
5 years ago
Jan Tattermusch
9039103637
message extensions + refactor
5 years ago
Jan Tattermusch
8dbf707aa0
add more tests
5 years ago
Jan Tattermusch
1e1d455423
add WriteFloat TODO
5 years ago
Jan Tattermusch
2bce090f32
add more tests
5 years ago
Jan Tattermusch
ecbb29d354
add WriteContext.Flush() method
5 years ago
Jan Tattermusch
3cdc107bda
fix bug in RefreshBuffer
5 years ago
James Newton-King
921bdaaa61
Improve repeated fixed parsing performance
5 years ago
Jan Tattermusch
90d4969bd1
LegacyGeneratedCodeTest now passing
5 years ago
Jan Tattermusch
361c933a58
annotate ByteString.Span and ByteString.Memory as SecuritySafeCritical
5 years ago
Jan Tattermusch
9070389516
regenerate code
5 years ago
Jan Tattermusch
ea1d55927d
test are almost passing
5 years ago
Jan Tattermusch
125e4ad267
regenerate C# protos
5 years ago
Jan Tattermusch
d3eddf7e2d
make everything build, with some TODOs
5 years ago
Jan Tattermusch
ca7bc464a9
make all writing use WriteContext
5 years ago