171 lines
4.9 KiB
C#
171 lines
4.9 KiB
C#
using System;
|
|
using System.Collections.Generic;
|
|
using System.Runtime.InteropServices;
|
|
using Cpp2IlInjected;
|
|
|
|
namespace BestHTTP.Extensions
|
|
{
|
|
// Token: 0x020019B7 RID: 6583
|
|
[Token(Token = "0x20019B7")]
|
|
[StructLayout(3)]
|
|
public sealed class HeaderValue
|
|
{
|
|
// Token: 0x17001C8E RID: 7310
|
|
// (get) Token: 0x0600B0FE RID: 45310 RVA: 0x00295A30 File Offset: 0x00293C30
|
|
// (set) Token: 0x0600B0FF RID: 45311 RVA: 0x00295A44 File Offset: 0x00293C44
|
|
[Token(Token = "0x17001C8E")]
|
|
public string Key
|
|
{
|
|
[Token(Token = "0x600B0FE")]
|
|
[Address(RVA = "0x3C39A0", Offset = "0x3C23A0", VA = "0x1803C39A0")]
|
|
get;
|
|
[Token(Token = "0x600B0FF")]
|
|
[Address(RVA = "0x3C39B0", Offset = "0x3C23B0", VA = "0x1803C39B0")]
|
|
set;
|
|
}
|
|
|
|
// Token: 0x17001C8F RID: 7311
|
|
// (get) Token: 0x0600B100 RID: 45312 RVA: 0x00295A58 File Offset: 0x00293C58
|
|
// (set) Token: 0x0600B101 RID: 45313 RVA: 0x00295A6C File Offset: 0x00293C6C
|
|
[Token(Token = "0x17001C8F")]
|
|
public string Value
|
|
{
|
|
[Token(Token = "0x600B100")]
|
|
[Address(RVA = "0x3C1240", Offset = "0x3BFC40", VA = "0x1803C1240")]
|
|
get;
|
|
[Token(Token = "0x600B101")]
|
|
[Address(RVA = "0x3C1280", Offset = "0x3BFC80", VA = "0x1803C1280")]
|
|
set;
|
|
}
|
|
|
|
// Token: 0x17001C90 RID: 7312
|
|
// (get) Token: 0x0600B102 RID: 45314 RVA: 0x00295A80 File Offset: 0x00293C80
|
|
// (set) Token: 0x0600B103 RID: 45315 RVA: 0x00295A94 File Offset: 0x00293C94
|
|
[Token(Token = "0x17001C90")]
|
|
public List<HeaderValue> Options
|
|
{
|
|
[Token(Token = "0x600B102")]
|
|
[Address(RVA = "0x3C1220", Offset = "0x3BFC20", VA = "0x1803C1220")]
|
|
get;
|
|
[Token(Token = "0x600B103")]
|
|
[Address(RVA = "0x3C1260", Offset = "0x3BFC60", VA = "0x1803C1260")]
|
|
set;
|
|
}
|
|
|
|
// Token: 0x17001C91 RID: 7313
|
|
// (get) Token: 0x0600B104 RID: 45316 RVA: 0x00295AA8 File Offset: 0x00293CA8
|
|
[Token(Token = "0x17001C91")]
|
|
public bool HasValue
|
|
{
|
|
[Token(Token = "0x600B104")]
|
|
[Address(RVA = "0x1C9DA90", Offset = "0x1C9C490", VA = "0x181C9DA90")]
|
|
get
|
|
{
|
|
return !string.IsNullOrEmpty(this.<Value>k__BackingField);
|
|
}
|
|
}
|
|
|
|
// Token: 0x0600B105 RID: 45317 RVA: 0x00295AC4 File Offset: 0x00293CC4
|
|
[Token(Token = "0x600B105")]
|
|
[Address(RVA = "0x3C1670", Offset = "0x3C0070", VA = "0x1803C1670")]
|
|
public HeaderValue()
|
|
{
|
|
}
|
|
|
|
// Token: 0x0600B106 RID: 45318 RVA: 0x00295AD8 File Offset: 0x00293CD8
|
|
[Token(Token = "0x600B106")]
|
|
[Address(RVA = "0x3C3A30", Offset = "0x3C2430", VA = "0x1803C3A30")]
|
|
public HeaderValue(string key)
|
|
{
|
|
this.Key = key;
|
|
}
|
|
|
|
// Token: 0x0600B107 RID: 45319 RVA: 0x00295AF4 File Offset: 0x00293CF4
|
|
[Token(Token = "0x600B107")]
|
|
[Address(RVA = "0x1C9D8F0", Offset = "0x1C9C2F0", VA = "0x181C9D8F0")]
|
|
public void Parse(string headerStr, ref int pos)
|
|
{
|
|
this.ParseImplementation(headerStr, ref pos, true);
|
|
}
|
|
|
|
// Token: 0x0600B108 RID: 45320 RVA: 0x0000220F File Offset: 0x0000040F
|
|
[Token(Token = "0x600B108")]
|
|
[Address(RVA = "0x1C9D9A0", Offset = "0x1C9C3A0", VA = "0x181C9D9A0")]
|
|
public bool TryGetOption(string key, out HeaderValue option)
|
|
{
|
|
throw new AnalysisFailedException("CPP2IL failed to recover any usable IL for this method.");
|
|
}
|
|
|
|
// Token: 0x0600B109 RID: 45321 RVA: 0x00295B0C File Offset: 0x00293D0C
|
|
[Token(Token = "0x600B109")]
|
|
[Address(RVA = "0x1C9D5A0", Offset = "0x1C9BFA0", VA = "0x181C9D5A0")]
|
|
private void ParseImplementation(string headerStr, ref int pos, bool isOptionIsAnOption)
|
|
{
|
|
Func<char, bool> <>9__18_ = HeaderValue.<>c.<>9__18_0;
|
|
if (<>9__18_ == 0)
|
|
{
|
|
HeaderValue.<>c.<>9__18_0 = delegate(char ch)
|
|
{
|
|
bool flag3;
|
|
return flag3;
|
|
};
|
|
}
|
|
int num = 0;
|
|
string text = Extensions.Read(headerStr, ref pos, <>9__18_, true);
|
|
this.<Key>k__BackingField = text;
|
|
char? c;
|
|
char value = c.value;
|
|
bool flag = num == 61;
|
|
if (!isOptionIsAnOption)
|
|
{
|
|
}
|
|
bool flag2 = num == 59;
|
|
if (num != 59)
|
|
{
|
|
if (!flag)
|
|
{
|
|
if (!flag2)
|
|
{
|
|
goto IL_A6;
|
|
}
|
|
HeaderValue headerValue = new HeaderValue();
|
|
int num2 = 0;
|
|
headerValue.ParseImplementation(headerStr, ref pos, num2 != 0);
|
|
List<HeaderValue> list = this.<Options>k__BackingField;
|
|
if (list == 0)
|
|
{
|
|
List<HeaderValue> list2 = new List();
|
|
this.<Options>k__BackingField = list2;
|
|
}
|
|
list.Add(headerValue);
|
|
}
|
|
string text2 = headerStr.ReadPossibleQuotedText(ref pos);
|
|
this.<Value>k__BackingField = text2;
|
|
IL_A6:
|
|
if (isOptionIsAnOption)
|
|
{
|
|
char value2 = Extensions.Peek(headerStr, ref pos).value;
|
|
while (num != 59)
|
|
{
|
|
}
|
|
}
|
|
}
|
|
}
|
|
|
|
// Token: 0x0600B10A RID: 45322 RVA: 0x00295BDC File Offset: 0x00293DDC
|
|
[Token(Token = "0x600B10A")]
|
|
[Address(RVA = "0x1C9D910", Offset = "0x1C9C310", VA = "0x181C9D910", Slot = "3")]
|
|
public override string ToString()
|
|
{
|
|
bool flag = string.IsNullOrEmpty(this.<Value>k__BackingField);
|
|
string text = this.<Key>k__BackingField;
|
|
if (flag)
|
|
{
|
|
return text;
|
|
}
|
|
string text2;
|
|
return text2;
|
|
}
|
|
}
|
|
}
|