Terraria v1.4.4.9
Terraria source code documentation
Loading...
Searching...
No Matches

◆ TryCreateContentRange()

static bool System.Net.Http.Headers.ContentRangeHeaderValue.TryCreateContentRange ( string input,
string unit,
int fromStartIndex,
int fromLength,
int toStartIndex,
int toLength,
int lengthStartIndex,
int lengthLength,
[NotNullWhen(true)] out object parsedValue )
inlinestaticprivate

Definition at line 283 of file ContentRangeHeaderValue.cs.

284 {
285 parsedValue = null;
286 long result = 0L;
287 if (fromLength > 0 && !HeaderUtilities.TryParseInt64(input, fromStartIndex, fromLength, out result))
288 {
289 return false;
290 }
291 long result2 = 0L;
292 if (toLength > 0 && !HeaderUtilities.TryParseInt64(input, toStartIndex, toLength, out result2))
293 {
294 return false;
295 }
296 if (fromLength > 0 && toLength > 0 && result > result2)
297 {
298 return false;
299 }
300 long result3 = 0L;
301 if (lengthLength > 0 && !HeaderUtilities.TryParseInt64(input, lengthStartIndex, lengthLength, out result3))
302 {
303 return false;
304 }
305 if (toLength > 0 && lengthLength > 0 && result2 >= result3)
306 {
307 return false;
308 }
309 ContentRangeHeaderValue contentRangeHeaderValue = new ContentRangeHeaderValue();
310 contentRangeHeaderValue._unit = unit;
311 if (fromLength > 0)
312 {
313 contentRangeHeaderValue._from = result;
314 contentRangeHeaderValue._to = result2;
315 }
316 if (lengthLength > 0)
317 {
318 contentRangeHeaderValue._length = result3;
319 }
320 parsedValue = contentRangeHeaderValue;
321 return true;
322 }

References System.Net.Http.Headers.ContentRangeHeaderValue.ContentRangeHeaderValue(), System.input, System.L, and System.Net.Http.Headers.HeaderUtilities.TryParseInt64().

Referenced by System.Net.Http.Headers.ContentRangeHeaderValue.GetContentRangeLength().