Lines Matching refs:encodedSize

48         // key is the encodedSize of varint values
55 // key is the encodedSize of string values
72 for (int encodedSize = 1; encodedSize <= 10; encodedSize++)
74 byte[] buffer = CreateBufferWithRandomVarints(random, BytesToParse / encodedSize, encodedSize, paddingValueCount);
75 varintInputBuffers.Add(encodedSize, buffer);
83 foreach (var encodedSize in StringEncodedSizes)
85 byte[] buffer = CreateBufferWithStrings(BytesToParse / encodedSize, encodedSize, encodedSize < 10 ? 10 : 1 );
86 stringInputBuffers.Add(encodedSize, buffer);
90 foreach (var encodedSize in StringSegmentedEncodedSizes)
92 byte[] buffer = CreateBufferWithStrings(BytesToParse / encodedSize, encodedSize, encodedSize < 10 ? 10 : 1);
93 stringInputBuffersSegmented.Add(encodedSize, ReadOnlySequenceFactory.CreateWithContent(buffer, segmentSize: 128, addEmptySegmentDelimiters: false));
110 public int ParseRawVarint32_CodedInputStream(int encodedSize)
112 CodedInputStream cis = new CodedInputStream(varintInputBuffers[encodedSize]);
114 for (int i = 0; i < BytesToParse / encodedSize; i++)
127 public int ParseRawVarint32_ParseContext(int encodedSize)
129 InitializeParseContext(varintInputBuffers[encodedSize], out ParseContext ctx);
131 for (int i = 0; i < BytesToParse / encodedSize; i++)
149 public long ParseRawVarint64_CodedInputStream(int encodedSize)
151 CodedInputStream cis = new CodedInputStream(varintInputBuffers[encodedSize]);
153 for (int i = 0; i < BytesToParse / encodedSize; i++)
171 public long ParseRawVarint64_ParseContext(int encodedSize)
173 InitializeParseContext(varintInputBuffers[encodedSize], out ParseContext ctx);
175 for (int i = 0; i < BytesToParse / encodedSize; i++)
185 const int encodedSize = sizeof(uint);
188 for (uint i = 0; i < BytesToParse / encodedSize; i++)
198 const int encodedSize = sizeof(uint);
201 for (uint i = 0; i < BytesToParse / encodedSize; i++)
211 const int encodedSize = sizeof(ulong);
214 for (int i = 0; i < BytesToParse / encodedSize; i++)
224 const int encodedSize = sizeof(ulong);
227 for (int i = 0; i < BytesToParse / encodedSize; i++)
237 const int encodedSize = sizeof(float);
240 for (int i = 0; i < BytesToParse / encodedSize; i++)
250 const int encodedSize = sizeof(float);
253 for (int i = 0; i < BytesToParse / encodedSize; i++)
263 const int encodedSize = sizeof(double);
266 for (int i = 0; i < BytesToParse / encodedSize; i++)
276 const int encodedSize = sizeof(double);
279 for (int i = 0; i < BytesToParse / encodedSize; i++)
288 public int ParseString_CodedInputStream(int encodedSize)
290 CodedInputStream cis = new CodedInputStream(stringInputBuffers[encodedSize]);
292 for (int i = 0; i < BytesToParse / encodedSize; i++)
301 public int ParseString_ParseContext(int encodedSize)
303 InitializeParseContext(stringInputBuffers[encodedSize], out ParseContext ctx);
305 for (int i = 0; i < BytesToParse / encodedSize; i++)
314 public int ParseString_ParseContext_MultipleSegments(int encodedSize)
316 InitializeParseContext(stringInputBuffersSegmented[encodedSize], out ParseContext ctx);
318 for (int i = 0; i < BytesToParse / encodedSize; i++)
327 public int ParseBytes_CodedInputStream(int encodedSize)
329 CodedInputStream cis = new CodedInputStream(stringInputBuffers[encodedSize]);
331 for (int i = 0; i < BytesToParse / encodedSize; i++)
340 public int ParseBytes_ParseContext(int encodedSize)
342 InitializeParseContext(stringInputBuffers[encodedSize], out ParseContext ctx);
344 for (int i = 0; i < BytesToParse / encodedSize; i++)
353 public int ParseBytes_ParseContext_MultipleSegments(int encodedSize)
355 InitializeParseContext(stringInputBuffersSegmented[encodedSize], out ParseContext ctx);
357 for (int i = 0; i < BytesToParse / encodedSize; i++)
374 private static byte[] CreateBufferWithRandomVarints(Random random, int valueCount, int encodedSize, int paddingValueCount)
380 cos.WriteUInt64(RandomUnsignedVarint(random, encodedSize, false));
385 if (buffer.Length != encodedSize * (valueCount + paddingValueCount))
418 private static byte[] CreateBufferWithRandomData(Random random, int valueCount, int encodedSize, int paddingValueCount)
420 int bufferSize = (valueCount + paddingValueCount) * encodedSize;
427 /// Generate a random value that will take exactly "encodedSize" bytes when varint-encoded.
429 public static ulong RandomUnsignedVarint(Random random, int encodedSize, bool fitsIn32Bits)
433 if (encodedSize < 1 || encodedSize > 10 || (fitsIn32Bits && encodedSize > 5))
435 throw new ArgumentException("Illegal encodedSize value requested", nameof(encodedSize));
446 ulong bitmask = encodedSize < 10 ? ((1UL << (encodedSize * bitsPerByte)) - 1) : ulong.MaxValue;
455 if (encodedSize == 10)
462 // some random values won't require the full "encodedSize" bytes, check that at least
464 if (encodedSize == 1 || (result & (0x7FUL << ((encodedSize - 1) * bitsPerByte))) != 0)
472 private static byte[] CreateBufferWithStrings(int valueCount, int encodedSize, int paddingValueCount)
474 var str = CreateStringWithEncodedSize(encodedSize);
485 if (buffer.Length != encodedSize * (valueCount + paddingValueCount))
492 public static string CreateStringWithEncodedSize(int encodedSize)
494 var str = new string('a', encodedSize);
495 while (CodedOutputStream.ComputeStringSize(str) > encodedSize)
500 if (CodedOutputStream.ComputeStringSize(str) != encodedSize)
502 throw new InvalidOperationException($"Generated string with wrong encodedSize");
507 public static string CreateNonAsciiStringWithEncodedSize(int encodedSize)
509 if (encodedSize < 3)
514 var str = new string(twoByteChar, encodedSize / 2);
515 while (CodedOutputStream.ComputeStringSize(str) > encodedSize)
521 while (CodedOutputStream.ComputeStringSize(str) < encodedSize)
526 // Note that for a few specific encodedSize values, it might be impossible to generate
527 // the string with the desired encodedSize using the algorithm above. For testing purposes, checking that
529 if (CodedOutputStream.ComputeStringSize(str) != encodedSize)
531 throw new InvalidOperationException($"Generated string with wrong encodedSize");