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

◆ RemoveParsedValue()

bool System.Net.Http.Headers.HttpHeaders.RemoveParsedValue ( HeaderDescriptor descriptor,
object value )
inlinepackageinherited

Definition at line 380 of file HttpHeaders.cs.

381 {
382 if (_headerStore == null)
383 {
384 return false;
385 }
386 if (TryGetAndParseHeaderInfo(descriptor, out var info))
387 {
388 if (info.ParsedValue == null)
389 {
390 return false;
391 }
392 bool result = false;
393 IEqualityComparer comparer = descriptor.Parser.Comparer;
394 if (!(info.ParsedValue is List<object> list))
395 {
396 if (AreEqual(value, info.ParsedValue, comparer))
397 {
398 info.ParsedValue = null;
399 result = true;
400 }
401 }
402 else
403 {
404 foreach (object item in list)
405 {
407 {
408 result = list.Remove(item);
409 break;
410 }
411 }
412 if (list.Count == 0)
413 {
414 info.ParsedValue = null;
415 }
416 }
417 if (info.IsEmpty)
418 {
419 bool flag = Remove(descriptor);
420 }
421 return result;
422 }
423 return false;
424 }
bool TryGetAndParseHeaderInfo(HeaderDescriptor key, [NotNullWhen(true)] out HeaderStoreItemInfo info)
bool AreEqual(object value, object storeValue, IEqualityComparer comparer)
Dictionary< HeaderDescriptor, object > _headerStore

References System.Net.Http.Headers.HttpHeaders._headerStore, System.Net.Http.Headers.HttpHeaders.AreEqual(), System.comparer, System.Net.Http.Headers.HttpHeaderParser.Comparer, System.info, System.item, System.list, System.Net.Http.Headers.HeaderDescriptor.Parser, System.Net.Http.Headers.HttpHeaders.Remove(), System.Net.Http.Headers.HttpHeaders.TryGetAndParseHeaderInfo(), and System.value.

Referenced by System.Net.Http.Headers.HttpHeaderValueCollection< T >.Remove(), and System.Net.Http.Headers.HttpHeaderValueCollection< T >.RemoveSpecialValue().