This commit is contained in:
niko
2026-04-11 22:19:20 +02:00
parent 45b857ff11
commit 8fc35183db
17034 changed files with 2863552 additions and 0 deletions
+400
View File
@@ -0,0 +1,400 @@
using System;
using System.Collections.Generic;
using System.Runtime.InteropServices;
using Cpp2IlInjected;
namespace BestHTTP.Futures
{
// Token: 0x02001F8C RID: 8076
[Token(Token = "0x2001F8C")]
public class Future<T> : IFuture<T>
{
// Token: 0x17002083 RID: 8323
// (get) Token: 0x0600CC72 RID: 52338 RVA: 0x002ECC3C File Offset: 0x002EAE3C
[Token(Token = "0x17002083")]
public FutureState state
{
[Token(Token = "0x600CC72")]
[Address(RVA = "0x1D99560", Offset = "0x1D98360", VA = "0x181D99560", Slot = "4")]
get
{
/*
An exception occurred when decompiling this method (0600CC72)
ICSharpCode.Decompiler.DecompilerException: Error decompiling BestHTTP.Futures.FutureState BestHTTP.Futures.Future`1::get_state()
---> System.Exception: Basic block has to end with unconditional control flow.
{
Block_0:
stloc:int32(var_0_06, ldfld:FutureState[exp:int32](Future`1::_state, ldloc:Future`1(this)))
}
at ICSharpCode.Decompiler.ILAst.ILAstOptimizer.FlattenBasicBlocks(ILNode node) in D:\a\dnSpy\dnSpy\Extensions\ILSpy.Decompiler\ICSharpCode.Decompiler\ICSharpCode.Decompiler\ILAst\ILAstOptimizer.cs:line 1852
at ICSharpCode.Decompiler.ILAst.ILAstOptimizer.Optimize(DecompilerContext context, ILBlock method, AutoPropertyProvider autoPropertyProvider, StateMachineKind& stateMachineKind, MethodDef& inlinedMethod, AsyncMethodDebugInfo& asyncInfo, ILAstOptimizationStep abortBeforeStep) in D:\a\dnSpy\dnSpy\Extensions\ILSpy.Decompiler\ICSharpCode.Decompiler\ICSharpCode.Decompiler\ILAst\ILAstOptimizer.cs:line 355
at ICSharpCode.Decompiler.Ast.AstMethodBodyBuilder.CreateMethodBody(IEnumerable`1 parameters, MethodDebugInfoBuilder& builder) in D:\a\dnSpy\dnSpy\Extensions\ILSpy.Decompiler\ICSharpCode.Decompiler\ICSharpCode.Decompiler\Ast\AstMethodBodyBuilder.cs:line 123
at ICSharpCode.Decompiler.Ast.AstMethodBodyBuilder.CreateMethodBody(MethodDef methodDef, DecompilerContext context, AutoPropertyProvider autoPropertyProvider, IEnumerable`1 parameters, Boolean valueParameterIsKeyword, StringBuilder sb, MethodDebugInfoBuilder& stmtsBuilder) in D:\a\dnSpy\dnSpy\Extensions\ILSpy.Decompiler\ICSharpCode.Decompiler\ICSharpCode.Decompiler\Ast\AstMethodBodyBuilder.cs:line 88
--- End of inner exception stack trace ---
at ICSharpCode.Decompiler.Ast.AstMethodBodyBuilder.CreateMethodBody(MethodDef methodDef, DecompilerContext context, AutoPropertyProvider autoPropertyProvider, IEnumerable`1 parameters, Boolean valueParameterIsKeyword, StringBuilder sb, MethodDebugInfoBuilder& stmtsBuilder) in D:\a\dnSpy\dnSpy\Extensions\ILSpy.Decompiler\ICSharpCode.Decompiler\ICSharpCode.Decompiler\Ast\AstMethodBodyBuilder.cs:line 92
at ICSharpCode.Decompiler.Ast.AstBuilder.AddMethodBody(EntityDeclaration methodNode, EntityDeclaration& updatedNode, MethodDef method, IEnumerable`1 parameters, Boolean valueParameterIsKeyword, MethodKind methodKind) in D:\a\dnSpy\dnSpy\Extensions\ILSpy.Decompiler\ICSharpCode.Decompiler\ICSharpCode.Decompiler\Ast\AstBuilder.cs:line 1660
*/;
}
}
// Token: 0x17002084 RID: 8324
// (get) Token: 0x0600CC73 RID: 52339 RVA: 0x002ECC50 File Offset: 0x002EAE50
[Token(Token = "0x17002084")]
public T value
{
[Token(Token = "0x600CC73")]
[Address(RVA = "0x2A35D20", Offset = "0x2A34B20", VA = "0x182A35D20", Slot = "5")]
get
{
/*
An exception occurred when decompiling this method (0600CC73)
ICSharpCode.Decompiler.DecompilerException: Error decompiling T BestHTTP.Futures.Future`1::get_value()
---> System.Exception: Basic block has to end with unconditional control flow.
{
IL_19:
stloc:InvalidOperationException(var_0_23, newobj:InvalidOperationException(InvalidOperationException::.ctor, ldstr:string("value is not available unless state is Success or Processing.")))
}
at ICSharpCode.Decompiler.ILAst.ILAstOptimizer.FlattenBasicBlocks(ILNode node) in D:\a\dnSpy\dnSpy\Extensions\ILSpy.Decompiler\ICSharpCode.Decompiler\ICSharpCode.Decompiler\ILAst\ILAstOptimizer.cs:line 1852
at ICSharpCode.Decompiler.ILAst.ILAstOptimizer.FlattenBasicBlocks(ILNode node) in D:\a\dnSpy\dnSpy\Extensions\ILSpy.Decompiler\ICSharpCode.Decompiler\ICSharpCode.Decompiler\ILAst\ILAstOptimizer.cs:line 1878
at ICSharpCode.Decompiler.ILAst.ILAstOptimizer.FlattenBasicBlocks(ILNode node) in D:\a\dnSpy\dnSpy\Extensions\ILSpy.Decompiler\ICSharpCode.Decompiler\ICSharpCode.Decompiler\ILAst\ILAstOptimizer.cs:line 1878
at ICSharpCode.Decompiler.ILAst.ILAstOptimizer.FlattenBasicBlocks(ILNode node) in D:\a\dnSpy\dnSpy\Extensions\ILSpy.Decompiler\ICSharpCode.Decompiler\ICSharpCode.Decompiler\ILAst\ILAstOptimizer.cs:line 1846
at ICSharpCode.Decompiler.ILAst.ILAstOptimizer.Optimize(DecompilerContext context, ILBlock method, AutoPropertyProvider autoPropertyProvider, StateMachineKind& stateMachineKind, MethodDef& inlinedMethod, AsyncMethodDebugInfo& asyncInfo, ILAstOptimizationStep abortBeforeStep) in D:\a\dnSpy\dnSpy\Extensions\ILSpy.Decompiler\ICSharpCode.Decompiler\ICSharpCode.Decompiler\ILAst\ILAstOptimizer.cs:line 355
at ICSharpCode.Decompiler.Ast.AstMethodBodyBuilder.CreateMethodBody(IEnumerable`1 parameters, MethodDebugInfoBuilder& builder) in D:\a\dnSpy\dnSpy\Extensions\ILSpy.Decompiler\ICSharpCode.Decompiler\ICSharpCode.Decompiler\Ast\AstMethodBodyBuilder.cs:line 123
at ICSharpCode.Decompiler.Ast.AstMethodBodyBuilder.CreateMethodBody(MethodDef methodDef, DecompilerContext context, AutoPropertyProvider autoPropertyProvider, IEnumerable`1 parameters, Boolean valueParameterIsKeyword, StringBuilder sb, MethodDebugInfoBuilder& stmtsBuilder) in D:\a\dnSpy\dnSpy\Extensions\ILSpy.Decompiler\ICSharpCode.Decompiler\ICSharpCode.Decompiler\Ast\AstMethodBodyBuilder.cs:line 88
--- End of inner exception stack trace ---
at ICSharpCode.Decompiler.Ast.AstMethodBodyBuilder.CreateMethodBody(MethodDef methodDef, DecompilerContext context, AutoPropertyProvider autoPropertyProvider, IEnumerable`1 parameters, Boolean valueParameterIsKeyword, StringBuilder sb, MethodDebugInfoBuilder& stmtsBuilder) in D:\a\dnSpy\dnSpy\Extensions\ILSpy.Decompiler\ICSharpCode.Decompiler\ICSharpCode.Decompiler\Ast\AstMethodBodyBuilder.cs:line 92
at ICSharpCode.Decompiler.Ast.AstBuilder.AddMethodBody(EntityDeclaration methodNode, EntityDeclaration& updatedNode, MethodDef method, IEnumerable`1 parameters, Boolean valueParameterIsKeyword, MethodKind methodKind) in D:\a\dnSpy\dnSpy\Extensions\ILSpy.Decompiler\ICSharpCode.Decompiler\ICSharpCode.Decompiler\Ast\AstBuilder.cs:line 1660
*/;
}
}
// Token: 0x17002085 RID: 8325
// (get) Token: 0x0600CC74 RID: 52340 RVA: 0x002ECC80 File Offset: 0x002EAE80
[Token(Token = "0x17002085")]
public Exception error
{
[Token(Token = "0x600CC74")]
[Address(RVA = "0x2A35CA0", Offset = "0x2A34AA0", VA = "0x182A35CA0", Slot = "6")]
get
{
/*
An exception occurred when decompiling this method (0600CC74)
ICSharpCode.Decompiler.DecompilerException: Error decompiling System.Exception BestHTTP.Futures.Future`1::get_error()
---> System.Exception: Basic block has to end with unconditional control flow.
{
IL_09:
stloc:InvalidOperationException(var_0_13, newobj:InvalidOperationException(InvalidOperationException::.ctor, ldstr:string("error is not available unless state is Error.")))
}
at ICSharpCode.Decompiler.ILAst.ILAstOptimizer.FlattenBasicBlocks(ILNode node) in D:\a\dnSpy\dnSpy\Extensions\ILSpy.Decompiler\ICSharpCode.Decompiler\ICSharpCode.Decompiler\ILAst\ILAstOptimizer.cs:line 1852
at ICSharpCode.Decompiler.ILAst.ILAstOptimizer.Optimize(DecompilerContext context, ILBlock method, AutoPropertyProvider autoPropertyProvider, StateMachineKind& stateMachineKind, MethodDef& inlinedMethod, AsyncMethodDebugInfo& asyncInfo, ILAstOptimizationStep abortBeforeStep) in D:\a\dnSpy\dnSpy\Extensions\ILSpy.Decompiler\ICSharpCode.Decompiler\ICSharpCode.Decompiler\ILAst\ILAstOptimizer.cs:line 355
at ICSharpCode.Decompiler.Ast.AstMethodBodyBuilder.CreateMethodBody(IEnumerable`1 parameters, MethodDebugInfoBuilder& builder) in D:\a\dnSpy\dnSpy\Extensions\ILSpy.Decompiler\ICSharpCode.Decompiler\ICSharpCode.Decompiler\Ast\AstMethodBodyBuilder.cs:line 123
at ICSharpCode.Decompiler.Ast.AstMethodBodyBuilder.CreateMethodBody(MethodDef methodDef, DecompilerContext context, AutoPropertyProvider autoPropertyProvider, IEnumerable`1 parameters, Boolean valueParameterIsKeyword, StringBuilder sb, MethodDebugInfoBuilder& stmtsBuilder) in D:\a\dnSpy\dnSpy\Extensions\ILSpy.Decompiler\ICSharpCode.Decompiler\ICSharpCode.Decompiler\Ast\AstMethodBodyBuilder.cs:line 88
--- End of inner exception stack trace ---
at ICSharpCode.Decompiler.Ast.AstMethodBodyBuilder.CreateMethodBody(MethodDef methodDef, DecompilerContext context, AutoPropertyProvider autoPropertyProvider, IEnumerable`1 parameters, Boolean valueParameterIsKeyword, StringBuilder sb, MethodDebugInfoBuilder& stmtsBuilder) in D:\a\dnSpy\dnSpy\Extensions\ILSpy.Decompiler\ICSharpCode.Decompiler\ICSharpCode.Decompiler\Ast\AstMethodBodyBuilder.cs:line 92
at ICSharpCode.Decompiler.Ast.AstBuilder.AddMethodBody(EntityDeclaration methodNode, EntityDeclaration& updatedNode, MethodDef method, IEnumerable`1 parameters, Boolean valueParameterIsKeyword, MethodKind methodKind) in D:\a\dnSpy\dnSpy\Extensions\ILSpy.Decompiler\ICSharpCode.Decompiler\ICSharpCode.Decompiler\Ast\AstBuilder.cs:line 1660
*/;
}
}
// Token: 0x0600CC75 RID: 52341 RVA: 0x002ECCA0 File Offset: 0x002EAEA0
[Token(Token = "0x600CC75")]
[Address(RVA = "0x2A35980", Offset = "0x2A34780", VA = "0x182A35980")]
public Future()
{
List<FutureErrorCallback> list = new List();
base..ctor();
this._state = (FutureState)((ulong)0L);
}
// Token: 0x0600CC76 RID: 52342 RVA: 0x002ECCC4 File Offset: 0x002EAEC4
[Token(Token = "0x600CC76")]
[Address(RVA = "0x2A35310", Offset = "0x2A34110", VA = "0x182A35310", Slot = "7")]
public IFuture<T> OnItem(FutureValueCallback<T> callback)
{
bool flag;
if (this._state >= FutureState.Success || !flag)
{
}
throw new NullReferenceException();
}
// Token: 0x0600CC77 RID: 52343 RVA: 0x0000220F File Offset: 0x0000040F
[Token(Token = "0x600CC77")]
[Address(RVA = "0x2A353A0", Offset = "0x2A341A0", VA = "0x182A353A0", Slot = "8")]
public IFuture<T> OnSuccess(FutureValueCallback<T> callback)
{
throw new AnalysisFailedException("CPP2IL failed to recover any usable IL for this method.");
}
// Token: 0x0600CC78 RID: 52344 RVA: 0x002ECCE4 File Offset: 0x002EAEE4
[Token(Token = "0x600CC78")]
[Address(RVA = "0x2A350E0", Offset = "0x2A33EE0", VA = "0x182A350E0", Slot = "9")]
public IFuture<T> OnError(FutureErrorCallback callback)
{
bool flag;
if (this._state == FutureState.Error || (this._state != FutureState.Success && !flag))
{
Exception error = this.error;
callback(error);
}
throw new NullReferenceException();
}
// Token: 0x0600CC79 RID: 52345 RVA: 0x002ECD1C File Offset: 0x002EAF1C
[Token(Token = "0x600CC79")]
[Address(RVA = "0x2A34F60", Offset = "0x2A33D60", VA = "0x182A34F60", Slot = "10")]
public IFuture<T> OnComplete(FutureCallback<T> callback)
{
bool flag;
if (this._state == FutureState.Success || this._state == FutureState.Error || !flag)
{
callback.Invoke(this);
}
throw new NullReferenceException();
}
// Token: 0x0600CC7A RID: 52346 RVA: 0x002ECD4C File Offset: 0x002EAF4C
[Token(Token = "0x600CC7A")]
[Address(RVA = "0x2A35560", Offset = "0x2A34360", VA = "0x182A35560")]
public IFuture<T> Process(Func<T> func)
{
/*
An exception occurred when decompiling this method (0600CC7A)
ICSharpCode.Decompiler.DecompilerException: Error decompiling BestHTTP.Futures.IFuture`1<T> BestHTTP.Futures.Future`1::Process(System.Func`1<T>)
---> System.Exception: Basic block has to end with unconditional control flow.
{
IL_19:
stloc:InvalidOperationException(var_3_23, newobj:InvalidOperationException(InvalidOperationException::.ctor, ldstr:string("Cannot process a future that isn't in the Pending state.")))
}
at ICSharpCode.Decompiler.ILAst.ILAstOptimizer.FlattenBasicBlocks(ILNode node) in D:\a\dnSpy\dnSpy\Extensions\ILSpy.Decompiler\ICSharpCode.Decompiler\ICSharpCode.Decompiler\ILAst\ILAstOptimizer.cs:line 1852
at ICSharpCode.Decompiler.ILAst.ILAstOptimizer.Optimize(DecompilerContext context, ILBlock method, AutoPropertyProvider autoPropertyProvider, StateMachineKind& stateMachineKind, MethodDef& inlinedMethod, AsyncMethodDebugInfo& asyncInfo, ILAstOptimizationStep abortBeforeStep) in D:\a\dnSpy\dnSpy\Extensions\ILSpy.Decompiler\ICSharpCode.Decompiler\ICSharpCode.Decompiler\ILAst\ILAstOptimizer.cs:line 355
at ICSharpCode.Decompiler.Ast.AstMethodBodyBuilder.CreateMethodBody(IEnumerable`1 parameters, MethodDebugInfoBuilder& builder) in D:\a\dnSpy\dnSpy\Extensions\ILSpy.Decompiler\ICSharpCode.Decompiler\ICSharpCode.Decompiler\Ast\AstMethodBodyBuilder.cs:line 123
at ICSharpCode.Decompiler.Ast.AstMethodBodyBuilder.CreateMethodBody(MethodDef methodDef, DecompilerContext context, AutoPropertyProvider autoPropertyProvider, IEnumerable`1 parameters, Boolean valueParameterIsKeyword, StringBuilder sb, MethodDebugInfoBuilder& stmtsBuilder) in D:\a\dnSpy\dnSpy\Extensions\ILSpy.Decompiler\ICSharpCode.Decompiler\ICSharpCode.Decompiler\Ast\AstMethodBodyBuilder.cs:line 88
--- End of inner exception stack trace ---
at ICSharpCode.Decompiler.Ast.AstMethodBodyBuilder.CreateMethodBody(MethodDef methodDef, DecompilerContext context, AutoPropertyProvider autoPropertyProvider, IEnumerable`1 parameters, Boolean valueParameterIsKeyword, StringBuilder sb, MethodDebugInfoBuilder& stmtsBuilder) in D:\a\dnSpy\dnSpy\Extensions\ILSpy.Decompiler\ICSharpCode.Decompiler\ICSharpCode.Decompiler\Ast\AstMethodBodyBuilder.cs:line 92
at ICSharpCode.Decompiler.Ast.AstBuilder.AddMethodBody(EntityDeclaration methodNode, EntityDeclaration& updatedNode, MethodDef method, IEnumerable`1 parameters, Boolean valueParameterIsKeyword, MethodKind methodKind) in D:\a\dnSpy\dnSpy\Extensions\ILSpy.Decompiler\ICSharpCode.Decompiler\ICSharpCode.Decompiler\Ast\AstBuilder.cs:line 1660
*/;
}
// Token: 0x0600CC7B RID: 52347 RVA: 0x0000220F File Offset: 0x0000040F
[Token(Token = "0x600CC7B")]
[Address(RVA = "0x2A35720", Offset = "0x2A34520", VA = "0x182A35720")]
private void ThreadFunc(object param)
{
throw new AnalysisFailedException("CPP2IL failed to recover any usable IL for this method.");
}
// Token: 0x0600CC7C RID: 52348 RVA: 0x002ECD7C File Offset: 0x002EAF7C
[Token(Token = "0x600CC7C")]
[Address(RVA = "0x2A33D80", Offset = "0x2A32B80", VA = "0x182A33D80")]
public void Assign(T value)
{
/*
An exception occurred when decompiling this method (0600CC7C)
ICSharpCode.Decompiler.DecompilerException: Error decompiling System.Void BestHTTP.Futures.Future`1::Assign(T)
---> System.Exception: Basic block has to end with unconditional control flow.
{
IL_1A:
stloc:InvalidOperationException(var_1_24, newobj:InvalidOperationException(InvalidOperationException::.ctor, ldstr:string("Cannot assign a value to a future that isn't in the Pending or Processing state.")))
}
at ICSharpCode.Decompiler.ILAst.ILAstOptimizer.FlattenBasicBlocks(ILNode node) in D:\a\dnSpy\dnSpy\Extensions\ILSpy.Decompiler\ICSharpCode.Decompiler\ICSharpCode.Decompiler\ILAst\ILAstOptimizer.cs:line 1852
at ICSharpCode.Decompiler.ILAst.ILAstOptimizer.FlattenBasicBlocks(ILNode node) in D:\a\dnSpy\dnSpy\Extensions\ILSpy.Decompiler\ICSharpCode.Decompiler\ICSharpCode.Decompiler\ILAst\ILAstOptimizer.cs:line 1878
at ICSharpCode.Decompiler.ILAst.ILAstOptimizer.FlattenBasicBlocks(ILNode node) in D:\a\dnSpy\dnSpy\Extensions\ILSpy.Decompiler\ICSharpCode.Decompiler\ICSharpCode.Decompiler\ILAst\ILAstOptimizer.cs:line 1878
at ICSharpCode.Decompiler.ILAst.ILAstOptimizer.FlattenBasicBlocks(ILNode node) in D:\a\dnSpy\dnSpy\Extensions\ILSpy.Decompiler\ICSharpCode.Decompiler\ICSharpCode.Decompiler\ILAst\ILAstOptimizer.cs:line 1846
at ICSharpCode.Decompiler.ILAst.ILAstOptimizer.Optimize(DecompilerContext context, ILBlock method, AutoPropertyProvider autoPropertyProvider, StateMachineKind& stateMachineKind, MethodDef& inlinedMethod, AsyncMethodDebugInfo& asyncInfo, ILAstOptimizationStep abortBeforeStep) in D:\a\dnSpy\dnSpy\Extensions\ILSpy.Decompiler\ICSharpCode.Decompiler\ICSharpCode.Decompiler\ILAst\ILAstOptimizer.cs:line 355
at ICSharpCode.Decompiler.Ast.AstMethodBodyBuilder.CreateMethodBody(IEnumerable`1 parameters, MethodDebugInfoBuilder& builder) in D:\a\dnSpy\dnSpy\Extensions\ILSpy.Decompiler\ICSharpCode.Decompiler\ICSharpCode.Decompiler\Ast\AstMethodBodyBuilder.cs:line 123
at ICSharpCode.Decompiler.Ast.AstMethodBodyBuilder.CreateMethodBody(MethodDef methodDef, DecompilerContext context, AutoPropertyProvider autoPropertyProvider, IEnumerable`1 parameters, Boolean valueParameterIsKeyword, StringBuilder sb, MethodDebugInfoBuilder& stmtsBuilder) in D:\a\dnSpy\dnSpy\Extensions\ILSpy.Decompiler\ICSharpCode.Decompiler\ICSharpCode.Decompiler\Ast\AstMethodBodyBuilder.cs:line 88
--- End of inner exception stack trace ---
at ICSharpCode.Decompiler.Ast.AstMethodBodyBuilder.CreateMethodBody(MethodDef methodDef, DecompilerContext context, AutoPropertyProvider autoPropertyProvider, IEnumerable`1 parameters, Boolean valueParameterIsKeyword, StringBuilder sb, MethodDebugInfoBuilder& stmtsBuilder) in D:\a\dnSpy\dnSpy\Extensions\ILSpy.Decompiler\ICSharpCode.Decompiler\ICSharpCode.Decompiler\Ast\AstMethodBodyBuilder.cs:line 92
at ICSharpCode.Decompiler.Ast.AstBuilder.AddMethodBody(EntityDeclaration methodNode, EntityDeclaration& updatedNode, MethodDef method, IEnumerable`1 parameters, Boolean valueParameterIsKeyword, MethodKind methodKind) in D:\a\dnSpy\dnSpy\Extensions\ILSpy.Decompiler\ICSharpCode.Decompiler\ICSharpCode.Decompiler\Ast\AstBuilder.cs:line 1660
*/;
}
// Token: 0x0600CC7D RID: 52349 RVA: 0x002ECDB0 File Offset: 0x002EAFB0
[Token(Token = "0x600CC7D")]
[Address(RVA = "0x2A33F00", Offset = "0x2A32D00", VA = "0x182A33F00")]
public void BeginProcess([Optional] T initialItem)
{
this._state = (FutureState)((ulong)1L);
this._value = initialItem;
}
// Token: 0x0600CC7E RID: 52350 RVA: 0x0000220F File Offset: 0x0000040F
[Token(Token = "0x600CC7E")]
[Address(RVA = "0x2A33B60", Offset = "0x2A32960", VA = "0x182A33B60")]
public void AssignItem(T value)
{
throw new AnalysisFailedException("CPP2IL failed to recover any usable IL for this method.");
}
// Token: 0x0600CC7F RID: 52351 RVA: 0x002ECDD0 File Offset: 0x002EAFD0
[Token(Token = "0x600CC7F")]
[Address(RVA = "0x2A34240", Offset = "0x2A33040", VA = "0x182A34240")]
public void Fail(Exception error)
{
/*
An exception occurred when decompiling this method (0600CC7F)
ICSharpCode.Decompiler.DecompilerException: Error decompiling System.Void BestHTTP.Futures.Future`1::Fail(System.Exception)
---> System.Exception: Basic block has to end with unconditional control flow.
{
IL_1A:
stloc:InvalidOperationException(var_1_24, newobj:InvalidOperationException(InvalidOperationException::.ctor, ldstr:string("Cannot fail future that isn't in the Pending or Processing state.")))
}
at ICSharpCode.Decompiler.ILAst.ILAstOptimizer.FlattenBasicBlocks(ILNode node) in D:\a\dnSpy\dnSpy\Extensions\ILSpy.Decompiler\ICSharpCode.Decompiler\ICSharpCode.Decompiler\ILAst\ILAstOptimizer.cs:line 1852
at ICSharpCode.Decompiler.ILAst.ILAstOptimizer.FlattenBasicBlocks(ILNode node) in D:\a\dnSpy\dnSpy\Extensions\ILSpy.Decompiler\ICSharpCode.Decompiler\ICSharpCode.Decompiler\ILAst\ILAstOptimizer.cs:line 1878
at ICSharpCode.Decompiler.ILAst.ILAstOptimizer.FlattenBasicBlocks(ILNode node) in D:\a\dnSpy\dnSpy\Extensions\ILSpy.Decompiler\ICSharpCode.Decompiler\ICSharpCode.Decompiler\ILAst\ILAstOptimizer.cs:line 1878
at ICSharpCode.Decompiler.ILAst.ILAstOptimizer.FlattenBasicBlocks(ILNode node) in D:\a\dnSpy\dnSpy\Extensions\ILSpy.Decompiler\ICSharpCode.Decompiler\ICSharpCode.Decompiler\ILAst\ILAstOptimizer.cs:line 1846
at ICSharpCode.Decompiler.ILAst.ILAstOptimizer.Optimize(DecompilerContext context, ILBlock method, AutoPropertyProvider autoPropertyProvider, StateMachineKind& stateMachineKind, MethodDef& inlinedMethod, AsyncMethodDebugInfo& asyncInfo, ILAstOptimizationStep abortBeforeStep) in D:\a\dnSpy\dnSpy\Extensions\ILSpy.Decompiler\ICSharpCode.Decompiler\ICSharpCode.Decompiler\ILAst\ILAstOptimizer.cs:line 355
at ICSharpCode.Decompiler.Ast.AstMethodBodyBuilder.CreateMethodBody(IEnumerable`1 parameters, MethodDebugInfoBuilder& builder) in D:\a\dnSpy\dnSpy\Extensions\ILSpy.Decompiler\ICSharpCode.Decompiler\ICSharpCode.Decompiler\Ast\AstMethodBodyBuilder.cs:line 123
at ICSharpCode.Decompiler.Ast.AstMethodBodyBuilder.CreateMethodBody(MethodDef methodDef, DecompilerContext context, AutoPropertyProvider autoPropertyProvider, IEnumerable`1 parameters, Boolean valueParameterIsKeyword, StringBuilder sb, MethodDebugInfoBuilder& stmtsBuilder) in D:\a\dnSpy\dnSpy\Extensions\ILSpy.Decompiler\ICSharpCode.Decompiler\ICSharpCode.Decompiler\Ast\AstMethodBodyBuilder.cs:line 88
--- End of inner exception stack trace ---
at ICSharpCode.Decompiler.Ast.AstMethodBodyBuilder.CreateMethodBody(MethodDef methodDef, DecompilerContext context, AutoPropertyProvider autoPropertyProvider, IEnumerable`1 parameters, Boolean valueParameterIsKeyword, StringBuilder sb, MethodDebugInfoBuilder& stmtsBuilder) in D:\a\dnSpy\dnSpy\Extensions\ILSpy.Decompiler\ICSharpCode.Decompiler\ICSharpCode.Decompiler\Ast\AstMethodBodyBuilder.cs:line 92
at ICSharpCode.Decompiler.Ast.AstBuilder.AddMethodBody(EntityDeclaration methodNode, EntityDeclaration& updatedNode, MethodDef method, IEnumerable`1 parameters, Boolean valueParameterIsKeyword, MethodKind methodKind) in D:\a\dnSpy\dnSpy\Extensions\ILSpy.Decompiler\ICSharpCode.Decompiler\ICSharpCode.Decompiler\Ast\AstBuilder.cs:line 1660
*/;
}
// Token: 0x0600CC80 RID: 52352 RVA: 0x002ECE04 File Offset: 0x002EB004
[Token(Token = "0x600CC80")]
[Address(RVA = "0x2A338A0", Offset = "0x2A326A0", VA = "0x182A338A0")]
private void AssignImpl(T value)
{
this._value = value;
this._state = (FutureState)((ulong)2L);
FutureState state = ((IFuture)this).state;
}
// Token: 0x0600CC81 RID: 52353 RVA: 0x002ECE28 File Offset: 0x002EB028
[Token(Token = "0x600CC81")]
[Address(RVA = "0x2A340E0", Offset = "0x2A32EE0", VA = "0x182A340E0")]
private void FailImpl(Exception error)
{
int num = 0;
this._value = num;
this._state = (FutureState)((ulong)3L);
FutureState state = ((IFuture)this).state;
}
// Token: 0x0600CC82 RID: 52354 RVA: 0x0000220F File Offset: 0x0000040F
[Token(Token = "0x600CC82")]
[Address(RVA = "0x2A34D40", Offset = "0x2A33B40", VA = "0x182A34D40")]
private void FlushSuccessCallbacks()
{
throw new AnalysisFailedException("CPP2IL failed to recover any usable IL for this method.");
}
// Token: 0x0600CC83 RID: 52355 RVA: 0x002ECE50 File Offset: 0x002EB050
[Token(Token = "0x600CC83")]
[Address(RVA = "0x2A34930", Offset = "0x2A33730", VA = "0x182A34930")]
private void FlushErrorCallbacks()
{
int num;
int num2;
do
{
num = 0;
bool flag;
if (flag)
{
Exception error = this.error;
}
num2 = 0;
num2 += num2;
num2++;
}
while (num != 0);
num2 += num2;
num2 += 19;
num2 += typeof(List<FutureErrorCallback>.Enumerator).TypeHandle;
}
// Token: 0x0600CC84 RID: 52356 RVA: 0x002ECEA4 File Offset: 0x002EB0A4
[Token(Token = "0x600CC84")]
[Address(RVA = "0x2A34300", Offset = "0x2A33100", VA = "0x182A34300")]
private void FlushComplationCallbacks()
{
int num;
int num2;
do
{
num = 0;
bool flag;
if (flag)
{
}
num2 = 0;
num2 += num2;
num2++;
}
while (num != 0);
num2 += num2;
num2 += 19;
num2 += typeof(List<FutureCallback<T>>.Enumerator).TypeHandle;
this.ClearCallbacks();
}
// Token: 0x0600CC85 RID: 52357 RVA: 0x002ECEE8 File Offset: 0x002EB0E8
[Token(Token = "0x600CC85")]
[Address(RVA = "0x2A34020", Offset = "0x2A32E20", VA = "0x182A34020")]
private void ClearCallbacks()
{
}
// Token: 0x04008248 RID: 33352
[global::Cpp2IlInjected.FieldOffset(Offset = "0x0")]
[Token(Token = "0x4008248")]
private FutureState _state;
// Token: 0x04008249 RID: 33353
[global::Cpp2IlInjected.FieldOffset(Offset = "0x0")]
[Token(Token = "0x4008249")]
private T _value;
// Token: 0x0400824A RID: 33354
[global::Cpp2IlInjected.FieldOffset(Offset = "0x0")]
[Token(Token = "0x400824A")]
private Exception _error;
// Token: 0x0400824B RID: 33355
[global::Cpp2IlInjected.FieldOffset(Offset = "0x0")]
[Token(Token = "0x400824B")]
private Func<T> _processFunc;
// Token: 0x0400824C RID: 33356
[global::Cpp2IlInjected.FieldOffset(Offset = "0x0")]
[Token(Token = "0x400824C")]
private readonly List<FutureValueCallback<T>> _itemCallbacks;
// Token: 0x0400824D RID: 33357
[global::Cpp2IlInjected.FieldOffset(Offset = "0x0")]
[Token(Token = "0x400824D")]
private readonly List<FutureValueCallback<T>> _successCallbacks;
// Token: 0x0400824E RID: 33358
[global::Cpp2IlInjected.FieldOffset(Offset = "0x0")]
[Token(Token = "0x400824E")]
private readonly List<FutureErrorCallback> _errorCallbacks;
// Token: 0x0400824F RID: 33359
[global::Cpp2IlInjected.FieldOffset(Offset = "0x0")]
[Token(Token = "0x400824F")]
private readonly List<FutureCallback<T>> _complationCallbacks;
}
}
@@ -0,0 +1,45 @@
using System;
using Cpp2IlInjected;
namespace BestHTTP.Futures
{
// Token: 0x02001F89 RID: 8073
[Token(Token = "0x2001F89")]
public sealed class FutureCallback<T> : MulticastDelegate
{
// Token: 0x0600CC66 RID: 52326 RVA: 0x002ECA68 File Offset: 0x002EAC68
[Token(Token = "0x600CC66")]
[Address(RVA = "0x448ED0", Offset = "0x447CD0", VA = "0x180448ED0")]
public FutureCallback(object @object, IntPtr method)
{
}
// Token: 0x0600CC67 RID: 52327 RVA: 0x002ECA78 File Offset: 0x002EAC78
[Token(Token = "0x600CC67")]
[Address(RVA = "0x14771B0", Offset = "0x1475FB0", VA = "0x1814771B0", Slot = "13")]
public void Invoke(IFuture<T> future)
{
uint num;
if (num != (uint)0)
{
throw new ExecutionEngineException();
}
}
// Token: 0x0600CC68 RID: 52328 RVA: 0x0000220F File Offset: 0x0000040F
[Token(Token = "0x600CC68")]
[Address(RVA = "0x457150", Offset = "0x455F50", VA = "0x180457150", Slot = "14")]
public IAsyncResult BeginInvoke(IFuture<T> future, AsyncCallback callback, object @object)
{
throw new AnalysisFailedException("CPP2IL failed to recover any usable IL for this method.");
}
// Token: 0x0600CC69 RID: 52329 RVA: 0x0000220F File Offset: 0x0000040F
[Token(Token = "0x600CC69")]
[Address(RVA = "0x448B70", Offset = "0x447970", VA = "0x180448B70", Slot = "15")]
public void EndInvoke(IAsyncResult result)
{
throw new AnalysisFailedException("CPP2IL failed to recover any usable IL for this method.");
}
}
}
@@ -0,0 +1,50 @@
using System;
using Cpp2IlInjected;
namespace BestHTTP.Futures
{
// Token: 0x02001F8B RID: 8075
[Token(Token = "0x2001F8B")]
public sealed class FutureErrorCallback : MulticastDelegate
{
// Token: 0x0600CC6E RID: 52334 RVA: 0x002ECB6C File Offset: 0x002EAD6C
[Token(Token = "0x600CC6E")]
[Address(RVA = "0x448ED0", Offset = "0x447CD0", VA = "0x180448ED0")]
public FutureErrorCallback(object @object, IntPtr method)
{
this.method = method;
this.m_target = @object;
}
// Token: 0x0600CC6F RID: 52335 RVA: 0x002ECB88 File Offset: 0x002EAD88
[Token(Token = "0x600CC6F")]
[Address(RVA = "0x747410", Offset = "0x746210", VA = "0x180747410", Slot = "13")]
public void Invoke(Exception error)
{
if (this.delegates != 0)
{
}
uint num;
if (num != (uint)0)
{
throw new ExecutionEngineException();
}
}
// Token: 0x0600CC70 RID: 52336 RVA: 0x0000220F File Offset: 0x0000040F
[Token(Token = "0x600CC70")]
[Address(RVA = "0x457150", Offset = "0x455F50", VA = "0x180457150", Slot = "14")]
public IAsyncResult BeginInvoke(Exception error, AsyncCallback callback, object @object)
{
throw new AnalysisFailedException("CPP2IL failed to recover any usable IL for this method.");
}
// Token: 0x0600CC71 RID: 52337 RVA: 0x0000220F File Offset: 0x0000040F
[Token(Token = "0x600CC71")]
[Address(RVA = "0x448B70", Offset = "0x447970", VA = "0x180448B70", Slot = "15")]
public void EndInvoke(IAsyncResult result)
{
throw new AnalysisFailedException("CPP2IL failed to recover any usable IL for this method.");
}
}
}
@@ -0,0 +1,23 @@
using System;
using Cpp2IlInjected;
namespace BestHTTP.Futures
{
// Token: 0x02001F87 RID: 8071
[Token(Token = "0x2001F87")]
public enum FutureState
{
// Token: 0x04008244 RID: 33348
[Token(Token = "0x4008244")]
Pending,
// Token: 0x04008245 RID: 33349
[Token(Token = "0x4008245")]
Processing,
// Token: 0x04008246 RID: 33350
[Token(Token = "0x4008246")]
Success,
// Token: 0x04008247 RID: 33351
[Token(Token = "0x4008247")]
Error
}
}
@@ -0,0 +1,44 @@
using System;
using Cpp2IlInjected;
namespace BestHTTP.Futures
{
// Token: 0x02001F8A RID: 8074
[Token(Token = "0x2001F8A")]
public sealed class FutureValueCallback<T> : MulticastDelegate
{
// Token: 0x0600CC6A RID: 52330 RVA: 0x002ECAE0 File Offset: 0x002EACE0
[Token(Token = "0x600CC6A")]
[Address(RVA = "0x448ED0", Offset = "0x447CD0", VA = "0x180448ED0")]
public FutureValueCallback(object @object, IntPtr method)
{
}
// Token: 0x0600CC6B RID: 52331 RVA: 0x002ECAF0 File Offset: 0x002EACF0
[Token(Token = "0x600CC6B")]
[Address(RVA = "0x76A610", Offset = "0x769410", VA = "0x18076A610", Slot = "13")]
public void Invoke(T value)
{
uint num;
if (num != (uint)0)
{
throw new ExecutionEngineException();
}
}
// Token: 0x0600CC6C RID: 52332 RVA: 0x002ECB5C File Offset: 0x002EAD5C
[Token(Token = "0x600CC6C")]
[Address(RVA = "0x2A33820", Offset = "0x2A32620", VA = "0x182A33820", Slot = "14")]
public IAsyncResult BeginInvoke(T value, AsyncCallback callback, object @object)
{
}
// Token: 0x0600CC6D RID: 52333 RVA: 0x0000220F File Offset: 0x0000040F
[Token(Token = "0x600CC6D")]
[Address(RVA = "0x448B70", Offset = "0x447970", VA = "0x180448B70", Slot = "15")]
public void EndInvoke(IAsyncResult result)
{
throw new AnalysisFailedException("CPP2IL failed to recover any usable IL for this method.");
}
}
}
@@ -0,0 +1,60 @@
using System;
using Cpp2IlInjected;
namespace BestHTTP.Futures
{
// Token: 0x02001F88 RID: 8072
[Token(Token = "0x2001F88")]
public interface IFuture<T>
{
// Token: 0x17002080 RID: 8320
// (get) Token: 0x0600CC5F RID: 52319
[Token(Token = "0x17002080")]
FutureState state
{
[Token(Token = "0x600CC5F")]
[Address(Slot = "0")]
get;
}
// Token: 0x17002081 RID: 8321
// (get) Token: 0x0600CC60 RID: 52320
[Token(Token = "0x17002081")]
T value
{
[Token(Token = "0x600CC60")]
[Address(Slot = "1")]
get;
}
// Token: 0x17002082 RID: 8322
// (get) Token: 0x0600CC61 RID: 52321
[Token(Token = "0x17002082")]
Exception error
{
[Token(Token = "0x600CC61")]
[Address(Slot = "2")]
get;
}
// Token: 0x0600CC62 RID: 52322
[Token(Token = "0x600CC62")]
[Address(Slot = "3")]
IFuture<T> OnItem(FutureValueCallback<T> callback);
// Token: 0x0600CC63 RID: 52323
[Token(Token = "0x600CC63")]
[Address(Slot = "4")]
IFuture<T> OnSuccess(FutureValueCallback<T> callback);
// Token: 0x0600CC64 RID: 52324
[Token(Token = "0x600CC64")]
[Address(Slot = "5")]
IFuture<T> OnError(FutureErrorCallback callback);
// Token: 0x0600CC65 RID: 52325
[Token(Token = "0x600CC65")]
[Address(Slot = "6")]
IFuture<T> OnComplete(FutureCallback<T> callback);
}
}