Explorar el Código

ListComponent放到Mono层还是有问题,可能mono层无法区分热更层的Type,导致乱掉,所以客户端关闭了池的使用,虽然用了using ListComponent,但是实际上还是每次都new了新的对象

tanghai hace 4 años
padre
commit
ca38b64fa1
Se han modificado 100 ficheros con 645 adiciones y 214 borrados
  1. 1 1
      Robot/Hotfix/Robot/Console/CreateRobotConsoleHandler.cs
  2. 2 2
      Server/Hotfix/Module/ActorLocation/ActorLocationSenderComponentSystem.cs
  3. 0 2
      Unity/Assets/Mono/Core/Async/ETTaskHelper.cs
  4. 33 0
      Unity/Assets/Mono/Core/HashSetComponent.cs
  5. 11 0
      Unity/Assets/Mono/Core/HashSetComponent.cs.meta
  6. 41 0
      Unity/Assets/Mono/Core/ListComponent.cs
  7. 11 0
      Unity/Assets/Mono/Core/ListComponent.cs.meta
  8. 7 2
      Unity/Assets/Mono/ILRuntime/Generate/CLRBindings.cs
  9. 87 0
      Unity/Assets/Mono/ILRuntime/Generate/ET_ListComponent_1_ETTask_Binding.cs
  10. 11 0
      Unity/Assets/Mono/ILRuntime/Generate/ET_ListComponent_1_ETTask_Binding.cs.meta
  11. 65 0
      Unity/Assets/Mono/ILRuntime/Generate/ET_ListComponent_1_ILTypeInstance_Binding.cs
  12. 11 0
      Unity/Assets/Mono/ILRuntime/Generate/ET_ListComponent_1_ILTypeInstance_Binding.cs.meta
  13. 83 0
      Unity/Assets/Mono/ILRuntime/Generate/ET_ListComponent_1_String_Binding.cs
  14. 11 0
      Unity/Assets/Mono/ILRuntime/Generate/ET_ListComponent_1_String_Binding.cs.meta
  15. 87 0
      Unity/Assets/Mono/ILRuntime/Generate/ET_ListComponent_1_Task_Binding.cs
  16. 11 0
      Unity/Assets/Mono/ILRuntime/Generate/ET_ListComponent_1_Task_Binding.cs.meta
  17. 87 0
      Unity/Assets/Mono/ILRuntime/Generate/ET_ListComponent_1_Vector3_Binding.cs
  18. 11 0
      Unity/Assets/Mono/ILRuntime/Generate/ET_ListComponent_1_Vector3_Binding.cs.meta
  19. 2 37
      Unity/Assets/Mono/ILRuntime/Generate/System_Collections_Generic_List_1_ETTask_Binding.cs
  20. 0 18
      Unity/Assets/Mono/ILRuntime/Generate/System_Collections_Generic_List_1_String_Binding.cs
  21. 2 37
      Unity/Assets/Mono/ILRuntime/Generate/System_Collections_Generic_List_1_Task_Binding.cs
  22. 14 14
      Unity/Assets/Mono/ILRuntime/Generate/System_Collections_Generic_List_1_Vector3_Binding.cs
  23. 1 1
      Unity/Assets/ThirdParty/ILRuntime/ILRuntime.meta
  24. 1 1
      Unity/Assets/ThirdParty/ILRuntime/ILRuntime/CLR.meta
  25. 1 1
      Unity/Assets/ThirdParty/ILRuntime/ILRuntime/CLR/Method.meta
  26. 3 9
      Unity/Assets/ThirdParty/ILRuntime/ILRuntime/CLR/Method/CLRMethod.cs
  27. 1 1
      Unity/Assets/ThirdParty/ILRuntime/ILRuntime/CLR/Method/CLRMethod.cs.meta
  28. 0 0
      Unity/Assets/ThirdParty/ILRuntime/ILRuntime/CLR/Method/ExceptionHandler.cs
  29. 1 1
      Unity/Assets/ThirdParty/ILRuntime/ILRuntime/CLR/Method/ExceptionHandler.cs.meta
  30. 0 0
      Unity/Assets/ThirdParty/ILRuntime/ILRuntime/CLR/Method/ILMethod.cs
  31. 1 1
      Unity/Assets/ThirdParty/ILRuntime/ILRuntime/CLR/Method/ILMethod.cs.meta
  32. 0 0
      Unity/Assets/ThirdParty/ILRuntime/ILRuntime/CLR/Method/IMethod.cs
  33. 1 1
      Unity/Assets/ThirdParty/ILRuntime/ILRuntime/CLR/Method/IMethod.cs.meta
  34. 1 1
      Unity/Assets/ThirdParty/ILRuntime/ILRuntime/CLR/TypeSystem.meta
  35. 8 11
      Unity/Assets/ThirdParty/ILRuntime/ILRuntime/CLR/TypeSystem/CLRType.cs
  36. 1 1
      Unity/Assets/ThirdParty/ILRuntime/ILRuntime/CLR/TypeSystem/CLRType.cs.meta
  37. 0 0
      Unity/Assets/ThirdParty/ILRuntime/ILRuntime/CLR/TypeSystem/ILGenericParameterType.cs
  38. 1 1
      Unity/Assets/ThirdParty/ILRuntime/ILRuntime/CLR/TypeSystem/ILGenericParameterType.cs.meta
  39. 0 0
      Unity/Assets/ThirdParty/ILRuntime/ILRuntime/CLR/TypeSystem/ILType.cs
  40. 1 1
      Unity/Assets/ThirdParty/ILRuntime/ILRuntime/CLR/TypeSystem/ILType.cs.meta
  41. 0 0
      Unity/Assets/ThirdParty/ILRuntime/ILRuntime/CLR/TypeSystem/IType.cs
  42. 1 1
      Unity/Assets/ThirdParty/ILRuntime/ILRuntime/CLR/TypeSystem/IType.cs.meta
  43. 1 1
      Unity/Assets/ThirdParty/ILRuntime/ILRuntime/CLR/Utils.meta
  44. 0 4
      Unity/Assets/ThirdParty/ILRuntime/ILRuntime/CLR/Utils/Extensions.cs
  45. 1 1
      Unity/Assets/ThirdParty/ILRuntime/ILRuntime/CLR/Utils/Extensions.cs.meta
  46. 1 1
      Unity/Assets/ThirdParty/ILRuntime/ILRuntime/Other.meta
  47. 0 0
      Unity/Assets/ThirdParty/ILRuntime/ILRuntime/Other/ByReferenceKeyComparer.cs
  48. 1 1
      Unity/Assets/ThirdParty/ILRuntime/ILRuntime/Other/ByReferenceKeyComparer.cs.meta
  49. 0 0
      Unity/Assets/ThirdParty/ILRuntime/ILRuntime/Other/DelegateExportAttribute.cs
  50. 1 1
      Unity/Assets/ThirdParty/ILRuntime/ILRuntime/Other/DelegateExportAttribute.cs.meta
  51. 0 0
      Unity/Assets/ThirdParty/ILRuntime/ILRuntime/Other/NeedAdaptorAttribute.cs
  52. 1 1
      Unity/Assets/ThirdParty/ILRuntime/ILRuntime/Other/NeedAdaptorAttribute.cs.meta
  53. 0 0
      Unity/Assets/ThirdParty/ILRuntime/ILRuntime/Other/ThreadSafeDictionary.cs
  54. 1 1
      Unity/Assets/ThirdParty/ILRuntime/ILRuntime/Other/ThreadSafeDictionary.cs.meta
  55. 0 0
      Unity/Assets/ThirdParty/ILRuntime/ILRuntime/Other/UncheckedList.cs
  56. 1 1
      Unity/Assets/ThirdParty/ILRuntime/ILRuntime/Other/UncheckedList.cs.meta
  57. 0 0
      Unity/Assets/ThirdParty/ILRuntime/ILRuntime/Other/UncheckedStack.cs
  58. 1 1
      Unity/Assets/ThirdParty/ILRuntime/ILRuntime/Other/UncheckedStack.cs.meta
  59. 1 1
      Unity/Assets/ThirdParty/ILRuntime/ILRuntime/Reflection.meta
  60. 0 0
      Unity/Assets/ThirdParty/ILRuntime/ILRuntime/Reflection/Extensions.cs
  61. 1 1
      Unity/Assets/ThirdParty/ILRuntime/ILRuntime/Reflection/Extensions.cs.meta
  62. 0 0
      Unity/Assets/ThirdParty/ILRuntime/ILRuntime/Reflection/ILRuntimeConstructorInfo.cs
  63. 1 1
      Unity/Assets/ThirdParty/ILRuntime/ILRuntime/Reflection/ILRuntimeConstructorInfo.cs.meta
  64. 0 0
      Unity/Assets/ThirdParty/ILRuntime/ILRuntime/Reflection/ILRuntimeFieldInfo.cs
  65. 1 1
      Unity/Assets/ThirdParty/ILRuntime/ILRuntime/Reflection/ILRuntimeFieldInfo.cs.meta
  66. 0 0
      Unity/Assets/ThirdParty/ILRuntime/ILRuntime/Reflection/ILRuntimeMethodInfo.cs
  67. 1 1
      Unity/Assets/ThirdParty/ILRuntime/ILRuntime/Reflection/ILRuntimeMethodInfo.cs.meta
  68. 0 0
      Unity/Assets/ThirdParty/ILRuntime/ILRuntime/Reflection/ILRuntimeParameterInfo.cs
  69. 1 1
      Unity/Assets/ThirdParty/ILRuntime/ILRuntime/Reflection/ILRuntimeParameterInfo.cs.meta
  70. 0 0
      Unity/Assets/ThirdParty/ILRuntime/ILRuntime/Reflection/ILRuntimePropertyInfo.cs
  71. 1 1
      Unity/Assets/ThirdParty/ILRuntime/ILRuntime/Reflection/ILRuntimePropertyInfo.cs.meta
  72. 2 27
      Unity/Assets/ThirdParty/ILRuntime/ILRuntime/Reflection/ILRuntimeType.cs
  73. 1 1
      Unity/Assets/ThirdParty/ILRuntime/ILRuntime/Reflection/ILRuntimeType.cs.meta
  74. 0 0
      Unity/Assets/ThirdParty/ILRuntime/ILRuntime/Reflection/ILRuntimeWrapperType.cs
  75. 1 1
      Unity/Assets/ThirdParty/ILRuntime/ILRuntime/Reflection/ILRuntimeWrapperType.cs.meta
  76. 1 1
      Unity/Assets/ThirdParty/ILRuntime/ILRuntime/Runtime.meta
  77. 1 1
      Unity/Assets/ThirdParty/ILRuntime/ILRuntime/Runtime/Adaptors.meta
  78. 0 0
      Unity/Assets/ThirdParty/ILRuntime/ILRuntime/Runtime/Adaptors/CLRCrossBindingAdaptors.cs
  79. 1 1
      Unity/Assets/ThirdParty/ILRuntime/ILRuntime/Runtime/Adaptors/CLRCrossBindingAdaptors.cs.meta
  80. 1 1
      Unity/Assets/ThirdParty/ILRuntime/ILRuntime/Runtime/CLRBinding.meta
  81. 0 0
      Unity/Assets/ThirdParty/ILRuntime/ILRuntime/Runtime/CLRBinding/BindingCodeGenerator.cs
  82. 1 1
      Unity/Assets/ThirdParty/ILRuntime/ILRuntime/Runtime/CLRBinding/BindingCodeGenerator.cs.meta
  83. 0 0
      Unity/Assets/ThirdParty/ILRuntime/ILRuntime/Runtime/CLRBinding/BindingGeneratorExtensions.cs
  84. 1 1
      Unity/Assets/ThirdParty/ILRuntime/ILRuntime/Runtime/CLRBinding/BindingGeneratorExtensions.cs.meta
  85. 0 0
      Unity/Assets/ThirdParty/ILRuntime/ILRuntime/Runtime/CLRBinding/CLRBindingUtils.cs
  86. 1 1
      Unity/Assets/ThirdParty/ILRuntime/ILRuntime/Runtime/CLRBinding/CLRBindingUtils.cs.meta
  87. 0 0
      Unity/Assets/ThirdParty/ILRuntime/ILRuntime/Runtime/CLRBinding/CommonBindingGenerator.cs
  88. 1 1
      Unity/Assets/ThirdParty/ILRuntime/ILRuntime/Runtime/CLRBinding/CommonBindingGenerator.cs.meta
  89. 0 0
      Unity/Assets/ThirdParty/ILRuntime/ILRuntime/Runtime/CLRBinding/ConstructorBindingGenerator.cs
  90. 1 1
      Unity/Assets/ThirdParty/ILRuntime/ILRuntime/Runtime/CLRBinding/ConstructorBindingGenerator.cs.meta
  91. 0 0
      Unity/Assets/ThirdParty/ILRuntime/ILRuntime/Runtime/CLRBinding/FieldBindingGenerator.cs
  92. 1 1
      Unity/Assets/ThirdParty/ILRuntime/ILRuntime/Runtime/CLRBinding/FieldBindingGenerator.cs.meta
  93. 0 6
      Unity/Assets/ThirdParty/ILRuntime/ILRuntime/Runtime/CLRBinding/MethodBindingGenerator.cs
  94. 1 1
      Unity/Assets/ThirdParty/ILRuntime/ILRuntime/Runtime/CLRBinding/MethodBindingGenerator.cs.meta
  95. 0 0
      Unity/Assets/ThirdParty/ILRuntime/ILRuntime/Runtime/CLRBinding/ValueTypeBindingGenerator.cs
  96. 1 1
      Unity/Assets/ThirdParty/ILRuntime/ILRuntime/Runtime/CLRBinding/ValueTypeBindingGenerator.cs.meta
  97. 1 1
      Unity/Assets/ThirdParty/ILRuntime/ILRuntime/Runtime/Debugger.meta
  98. 0 0
      Unity/Assets/ThirdParty/ILRuntime/ILRuntime/Runtime/Debugger/BreakPointContext.cs
  99. 1 1
      Unity/Assets/ThirdParty/ILRuntime/ILRuntime/Runtime/Debugger/BreakPointContext.cs.meta
  100. 0 0
      Unity/Assets/ThirdParty/ILRuntime/ILRuntime/Runtime/Debugger/BreakpointInfo.cs

+ 1 - 1
Robot/Hotfix/Robot/Console/CreateRobotConsoleHandler.cs

@@ -31,7 +31,7 @@ namespace ET
                             {
                                 continue;
                             }
-                            thisProcessRobotScenes.List.Add(robotSceneConfig);
+                            thisProcessRobotScenes.Add(robotSceneConfig);
                         }
                         
                         // 创建机器人

+ 2 - 2
Server/Hotfix/Module/ActorLocation/ActorLocationSenderComponentSystem.cs

@@ -1,4 +1,4 @@
-using System;
+using System;
 using System.IO;
 
 namespace ET
@@ -39,7 +39,7 @@ namespace ET
 
                     if (timeNow > actorLocationMessageSender.LastSendOrRecvTime + ActorLocationSenderComponent.TIMEOUT_TIME)
                     {
-                        list.List.Add(key);
+                        list.Add(key);
                     }
                 }
 

+ 0 - 2
Unity/Assets/Mono/Core/Async/ETTaskHelper.cs

@@ -23,7 +23,6 @@ namespace ET
                 {
                     return;
                 }
-
                 if (this.count == 0)
                 {
                     List<ETTask> t = this.tcss;
@@ -35,7 +34,6 @@ namespace ET
 
                     return;
                 }
-
                 ETTask tcs = ETTask.Create(true);
 
                 tcss.Add(tcs);

+ 33 - 0
Unity/Assets/Mono/Core/HashSetComponent.cs

@@ -0,0 +1,33 @@
+using System;
+using System.Collections.Generic;
+
+namespace ET
+{
+    public class HashSetComponent<T>: HashSet<T>, IDisposable
+    {
+        private static readonly Queue<HashSetComponent<T>> queue = new Queue<HashSetComponent<T>>();
+        
+        public static HashSetComponent<T> Create()
+        {
+            if (queue.Count > 0)
+            {
+                return queue.Dequeue();
+            }
+
+            HashSetComponent<T> hashSetComponent = new HashSetComponent<T>();
+            return hashSetComponent;
+        }
+
+        private HashSetComponent()
+        {
+        }
+
+        public void Dispose()
+        {
+            this.Clear();
+#if NOT_UNITY
+            queue.Enqueue(this);
+#endif
+        }
+    }
+}

+ 11 - 0
Unity/Assets/Mono/Core/HashSetComponent.cs.meta

@@ -0,0 +1,11 @@
+fileFormatVersion: 2
+guid: c919506426bb2ee4bb9fc54ace00b98a
+MonoImporter:
+  externalObjects: {}
+  serializedVersion: 2
+  defaultReferences: []
+  executionOrder: 0
+  icon: {instanceID: 0}
+  userData: 
+  assetBundleName: 
+  assetBundleVariant: 

+ 41 - 0
Unity/Assets/Mono/Core/ListComponent.cs

@@ -0,0 +1,41 @@
+using System;
+using System.Collections.Generic;
+
+namespace ET
+{
+    public class ListComponent<T>: IDisposable
+    {
+        public List<T> List { get; private set; } = new List<T>();
+
+        private static readonly Queue<ListComponent<T>> queue = new Queue<ListComponent<T>>();
+
+        private ListComponent()
+        {
+        }
+
+        public static ListComponent<T> Create()
+        {
+            if (queue.Count > 0)
+            {
+                ListComponent<T> t = queue.Dequeue();
+                return t;
+            }
+
+            ListComponent<T> listComponent = new ListComponent<T>();
+            return listComponent;
+        }
+
+        public void Add(T t)
+        {
+            this.List.Add(t);
+        }
+
+        public void Dispose()
+        {
+            this.List.Clear();
+#if NOT_UNITY
+            queue.Enqueue(this);
+#endif
+        }
+    }
+}

+ 11 - 0
Unity/Assets/Mono/Core/ListComponent.cs.meta

@@ -0,0 +1,11 @@
+fileFormatVersion: 2
+guid: cb4aba377d4c5614ea4d42ea0d957ef5
+MonoImporter:
+  externalObjects: {}
+  serializedVersion: 2
+  defaultReferences: []
+  executionOrder: 0
+  icon: {instanceID: 0}
+  userData: 
+  assetBundleName: 
+  assetBundleVariant: 

+ 7 - 2
Unity/Assets/Mono/ILRuntime/Generate/CLRBindings.cs

@@ -180,8 +180,11 @@ namespace ILRuntime.Runtime.Generated
             System_Collections_Generic_Dictionary_2_String_ILTypeInstance_Binding_ValueCollection_Binding.Register(app);
             System_Collections_Generic_Dictionary_2_String_ILTypeInstance_Binding_ValueCollection_Binding_Enumerator_Binding.Register(app);
             System_Collections_Generic_KeyValuePair_2_String_Int32_Binding.Register(app);
-            System_Collections_Generic_List_1_ETTask_Binding.Register(app);
+            ET_ListComponent_1_ILTypeInstance_Binding.Register(app);
+            ET_ListComponent_1_ETTask_Binding.Register(app);
             ET_ETTaskHelper_Binding.Register(app);
+            System_Collections_Generic_List_1_ETTask_Binding.Register(app);
+            ET_ListComponent_1_String_Binding.Register(app);
             System_Collections_Generic_HashSet_1_String_Binding.Register(app);
             System_Collections_Generic_Dictionary_2_String_AnimationClip_Binding.Register(app);
             UnityEngine_LayerMask_Binding.Register(app);
@@ -190,6 +193,7 @@ namespace ILRuntime.Runtime.Generated
             System_Collections_Generic_Dictionary_2_Int32_Transform_Binding.Register(app);
             ET_ETTask_1_Int32_Binding.Register(app);
             ET_NetworkHelper_Binding.Register(app);
+            ET_ListComponent_1_Vector3_Binding.Register(app);
             ET_ETTaskCompleted_Binding.Register(app);
             System_Action_1_Boolean_Binding.Register(app);
             System_Math_Binding.Register(app);
@@ -201,8 +205,9 @@ namespace ILRuntime.Runtime.Generated
             ET_ETVoid_Binding.Register(app);
             System_Collections_Generic_Dictionary_2_String_Byte_Array_Binding.Register(app);
             System_Threading_Monitor_Binding.Register(app);
-            System_Collections_Generic_List_1_Task_Binding.Register(app);
+            ET_ListComponent_1_Task_Binding.Register(app);
             System_Threading_Tasks_Task_Binding.Register(app);
+            System_Collections_Generic_List_1_Task_Binding.Register(app);
             System_Runtime_CompilerServices_TaskAwaiter_Binding.Register(app);
             ET_TService_Binding.Register(app);
             ET_RandomHelper_Binding.Register(app);

+ 87 - 0
Unity/Assets/Mono/ILRuntime/Generate/ET_ListComponent_1_ETTask_Binding.cs

@@ -0,0 +1,87 @@
+using System;
+using System.Collections.Generic;
+using System.Linq;
+using System.Reflection;
+using System.Runtime.InteropServices;
+
+using ILRuntime.CLR.TypeSystem;
+using ILRuntime.CLR.Method;
+using ILRuntime.Runtime.Enviorment;
+using ILRuntime.Runtime.Intepreter;
+using ILRuntime.Runtime.Stack;
+using ILRuntime.Reflection;
+using ILRuntime.CLR.Utils;
+
+namespace ILRuntime.Runtime.Generated
+{
+    unsafe class ET_ListComponent_1_ETTask_Binding
+    {
+        public static void Register(ILRuntime.Runtime.Enviorment.AppDomain app)
+        {
+            BindingFlags flag = BindingFlags.Public | BindingFlags.Instance | BindingFlags.Static | BindingFlags.DeclaredOnly;
+            MethodBase method;
+            Type[] args;
+            Type type = typeof(ET.ListComponent<ET.ETTask>);
+            args = new Type[]{};
+            method = type.GetMethod("Create", flag, null, args, null);
+            app.RegisterCLRMethodRedirection(method, Create_0);
+            args = new Type[]{typeof(ET.ETTask)};
+            method = type.GetMethod("Add", flag, null, args, null);
+            app.RegisterCLRMethodRedirection(method, Add_1);
+            args = new Type[]{};
+            method = type.GetMethod("get_List", flag, null, args, null);
+            app.RegisterCLRMethodRedirection(method, get_List_2);
+
+
+        }
+
+
+        static StackObject* Create_0(ILIntepreter __intp, StackObject* __esp, IList<object> __mStack, CLRMethod __method, bool isNewObj)
+        {
+            ILRuntime.Runtime.Enviorment.AppDomain __domain = __intp.AppDomain;
+            StackObject* __ret = ILIntepreter.Minus(__esp, 0);
+
+
+            var result_of_this_method = ET.ListComponent<ET.ETTask>.Create();
+
+            return ILIntepreter.PushObject(__ret, __mStack, result_of_this_method);
+        }
+
+        static StackObject* Add_1(ILIntepreter __intp, StackObject* __esp, IList<object> __mStack, CLRMethod __method, bool isNewObj)
+        {
+            ILRuntime.Runtime.Enviorment.AppDomain __domain = __intp.AppDomain;
+            StackObject* ptr_of_this_method;
+            StackObject* __ret = ILIntepreter.Minus(__esp, 2);
+
+            ptr_of_this_method = ILIntepreter.Minus(__esp, 1);
+            ET.ETTask @t = (ET.ETTask)typeof(ET.ETTask).CheckCLRTypes(StackObject.ToObject(ptr_of_this_method, __domain, __mStack), (CLR.Utils.Extensions.TypeFlags)0);
+            __intp.Free(ptr_of_this_method);
+
+            ptr_of_this_method = ILIntepreter.Minus(__esp, 2);
+            ET.ListComponent<ET.ETTask> instance_of_this_method = (ET.ListComponent<ET.ETTask>)typeof(ET.ListComponent<ET.ETTask>).CheckCLRTypes(StackObject.ToObject(ptr_of_this_method, __domain, __mStack), (CLR.Utils.Extensions.TypeFlags)0);
+            __intp.Free(ptr_of_this_method);
+
+            instance_of_this_method.Add(@t);
+
+            return __ret;
+        }
+
+        static StackObject* get_List_2(ILIntepreter __intp, StackObject* __esp, IList<object> __mStack, CLRMethod __method, bool isNewObj)
+        {
+            ILRuntime.Runtime.Enviorment.AppDomain __domain = __intp.AppDomain;
+            StackObject* ptr_of_this_method;
+            StackObject* __ret = ILIntepreter.Minus(__esp, 1);
+
+            ptr_of_this_method = ILIntepreter.Minus(__esp, 1);
+            ET.ListComponent<ET.ETTask> instance_of_this_method = (ET.ListComponent<ET.ETTask>)typeof(ET.ListComponent<ET.ETTask>).CheckCLRTypes(StackObject.ToObject(ptr_of_this_method, __domain, __mStack), (CLR.Utils.Extensions.TypeFlags)0);
+            __intp.Free(ptr_of_this_method);
+
+            var result_of_this_method = instance_of_this_method.List;
+
+            return ILIntepreter.PushObject(__ret, __mStack, result_of_this_method);
+        }
+
+
+
+    }
+}

+ 11 - 0
Unity/Assets/Mono/ILRuntime/Generate/ET_ListComponent_1_ETTask_Binding.cs.meta

@@ -0,0 +1,11 @@
+fileFormatVersion: 2
+guid: 31a13e82d9b12ed41b88ecb50216eed6
+MonoImporter:
+  externalObjects: {}
+  serializedVersion: 2
+  defaultReferences: []
+  executionOrder: 0
+  icon: {instanceID: 0}
+  userData: 
+  assetBundleName: 
+  assetBundleVariant: 

+ 65 - 0
Unity/Assets/Mono/ILRuntime/Generate/ET_ListComponent_1_ILTypeInstance_Binding.cs

@@ -0,0 +1,65 @@
+using System;
+using System.Collections.Generic;
+using System.Linq;
+using System.Reflection;
+using System.Runtime.InteropServices;
+
+using ILRuntime.CLR.TypeSystem;
+using ILRuntime.CLR.Method;
+using ILRuntime.Runtime.Enviorment;
+using ILRuntime.Runtime.Intepreter;
+using ILRuntime.Runtime.Stack;
+using ILRuntime.Reflection;
+using ILRuntime.CLR.Utils;
+
+namespace ILRuntime.Runtime.Generated
+{
+    unsafe class ET_ListComponent_1_ILTypeInstance_Binding
+    {
+        public static void Register(ILRuntime.Runtime.Enviorment.AppDomain app)
+        {
+            BindingFlags flag = BindingFlags.Public | BindingFlags.Instance | BindingFlags.Static | BindingFlags.DeclaredOnly;
+            MethodBase method;
+            Type[] args;
+            Type type = typeof(ET.ListComponent<ILRuntime.Runtime.Intepreter.ILTypeInstance>);
+            args = new Type[]{};
+            method = type.GetMethod("Create", flag, null, args, null);
+            app.RegisterCLRMethodRedirection(method, Create_0);
+            args = new Type[]{};
+            method = type.GetMethod("get_List", flag, null, args, null);
+            app.RegisterCLRMethodRedirection(method, get_List_1);
+
+
+        }
+
+
+        static StackObject* Create_0(ILIntepreter __intp, StackObject* __esp, IList<object> __mStack, CLRMethod __method, bool isNewObj)
+        {
+            ILRuntime.Runtime.Enviorment.AppDomain __domain = __intp.AppDomain;
+            StackObject* __ret = ILIntepreter.Minus(__esp, 0);
+
+
+            var result_of_this_method = ET.ListComponent<ILRuntime.Runtime.Intepreter.ILTypeInstance>.Create();
+
+            return ILIntepreter.PushObject(__ret, __mStack, result_of_this_method);
+        }
+
+        static StackObject* get_List_1(ILIntepreter __intp, StackObject* __esp, IList<object> __mStack, CLRMethod __method, bool isNewObj)
+        {
+            ILRuntime.Runtime.Enviorment.AppDomain __domain = __intp.AppDomain;
+            StackObject* ptr_of_this_method;
+            StackObject* __ret = ILIntepreter.Minus(__esp, 1);
+
+            ptr_of_this_method = ILIntepreter.Minus(__esp, 1);
+            ET.ListComponent<ILRuntime.Runtime.Intepreter.ILTypeInstance> instance_of_this_method = (ET.ListComponent<ILRuntime.Runtime.Intepreter.ILTypeInstance>)typeof(ET.ListComponent<ILRuntime.Runtime.Intepreter.ILTypeInstance>).CheckCLRTypes(StackObject.ToObject(ptr_of_this_method, __domain, __mStack), (CLR.Utils.Extensions.TypeFlags)0);
+            __intp.Free(ptr_of_this_method);
+
+            var result_of_this_method = instance_of_this_method.List;
+
+            return ILIntepreter.PushObject(__ret, __mStack, result_of_this_method);
+        }
+
+
+
+    }
+}

+ 11 - 0
Unity/Assets/Mono/ILRuntime/Generate/ET_ListComponent_1_ILTypeInstance_Binding.cs.meta

@@ -0,0 +1,11 @@
+fileFormatVersion: 2
+guid: 1b70f19904ffe4e4caac3cf76901c646
+MonoImporter:
+  externalObjects: {}
+  serializedVersion: 2
+  defaultReferences: []
+  executionOrder: 0
+  icon: {instanceID: 0}
+  userData: 
+  assetBundleName: 
+  assetBundleVariant: 

+ 83 - 0
Unity/Assets/Mono/ILRuntime/Generate/ET_ListComponent_1_String_Binding.cs

@@ -0,0 +1,83 @@
+using System;
+using System.Collections.Generic;
+using System.Linq;
+using System.Reflection;
+using System.Runtime.InteropServices;
+
+using ILRuntime.CLR.TypeSystem;
+using ILRuntime.CLR.Method;
+using ILRuntime.Runtime.Enviorment;
+using ILRuntime.Runtime.Intepreter;
+using ILRuntime.Runtime.Stack;
+using ILRuntime.Reflection;
+using ILRuntime.CLR.Utils;
+
+namespace ILRuntime.Runtime.Generated
+{
+    unsafe class ET_ListComponent_1_String_Binding
+    {
+        public static void Register(ILRuntime.Runtime.Enviorment.AppDomain app)
+        {
+            BindingFlags flag = BindingFlags.Public | BindingFlags.Instance | BindingFlags.Static | BindingFlags.DeclaredOnly;
+            MethodBase method;
+            Type[] args;
+            Type type = typeof(ET.ListComponent<System.String>);
+            args = new Type[]{};
+            method = type.GetMethod("Create", flag, null, args, null);
+            app.RegisterCLRMethodRedirection(method, Create_0);
+            args = new Type[]{};
+            method = type.GetMethod("get_List", flag, null, args, null);
+            app.RegisterCLRMethodRedirection(method, get_List_1);
+            args = new Type[]{};
+            method = type.GetMethod("Dispose", flag, null, args, null);
+            app.RegisterCLRMethodRedirection(method, Dispose_2);
+
+
+        }
+
+
+        static StackObject* Create_0(ILIntepreter __intp, StackObject* __esp, IList<object> __mStack, CLRMethod __method, bool isNewObj)
+        {
+            ILRuntime.Runtime.Enviorment.AppDomain __domain = __intp.AppDomain;
+            StackObject* __ret = ILIntepreter.Minus(__esp, 0);
+
+
+            var result_of_this_method = ET.ListComponent<System.String>.Create();
+
+            return ILIntepreter.PushObject(__ret, __mStack, result_of_this_method);
+        }
+
+        static StackObject* get_List_1(ILIntepreter __intp, StackObject* __esp, IList<object> __mStack, CLRMethod __method, bool isNewObj)
+        {
+            ILRuntime.Runtime.Enviorment.AppDomain __domain = __intp.AppDomain;
+            StackObject* ptr_of_this_method;
+            StackObject* __ret = ILIntepreter.Minus(__esp, 1);
+
+            ptr_of_this_method = ILIntepreter.Minus(__esp, 1);
+            ET.ListComponent<System.String> instance_of_this_method = (ET.ListComponent<System.String>)typeof(ET.ListComponent<System.String>).CheckCLRTypes(StackObject.ToObject(ptr_of_this_method, __domain, __mStack), (CLR.Utils.Extensions.TypeFlags)0);
+            __intp.Free(ptr_of_this_method);
+
+            var result_of_this_method = instance_of_this_method.List;
+
+            return ILIntepreter.PushObject(__ret, __mStack, result_of_this_method);
+        }
+
+        static StackObject* Dispose_2(ILIntepreter __intp, StackObject* __esp, IList<object> __mStack, CLRMethod __method, bool isNewObj)
+        {
+            ILRuntime.Runtime.Enviorment.AppDomain __domain = __intp.AppDomain;
+            StackObject* ptr_of_this_method;
+            StackObject* __ret = ILIntepreter.Minus(__esp, 1);
+
+            ptr_of_this_method = ILIntepreter.Minus(__esp, 1);
+            ET.ListComponent<System.String> instance_of_this_method = (ET.ListComponent<System.String>)typeof(ET.ListComponent<System.String>).CheckCLRTypes(StackObject.ToObject(ptr_of_this_method, __domain, __mStack), (CLR.Utils.Extensions.TypeFlags)0);
+            __intp.Free(ptr_of_this_method);
+
+            instance_of_this_method.Dispose();
+
+            return __ret;
+        }
+
+
+
+    }
+}

+ 11 - 0
Unity/Assets/Mono/ILRuntime/Generate/ET_ListComponent_1_String_Binding.cs.meta

@@ -0,0 +1,11 @@
+fileFormatVersion: 2
+guid: 4b3f71dd37e85c84c924f2e7762aa4a5
+MonoImporter:
+  externalObjects: {}
+  serializedVersion: 2
+  defaultReferences: []
+  executionOrder: 0
+  icon: {instanceID: 0}
+  userData: 
+  assetBundleName: 
+  assetBundleVariant: 

+ 87 - 0
Unity/Assets/Mono/ILRuntime/Generate/ET_ListComponent_1_Task_Binding.cs

@@ -0,0 +1,87 @@
+using System;
+using System.Collections.Generic;
+using System.Linq;
+using System.Reflection;
+using System.Runtime.InteropServices;
+
+using ILRuntime.CLR.TypeSystem;
+using ILRuntime.CLR.Method;
+using ILRuntime.Runtime.Enviorment;
+using ILRuntime.Runtime.Intepreter;
+using ILRuntime.Runtime.Stack;
+using ILRuntime.Reflection;
+using ILRuntime.CLR.Utils;
+
+namespace ILRuntime.Runtime.Generated
+{
+    unsafe class ET_ListComponent_1_Task_Binding
+    {
+        public static void Register(ILRuntime.Runtime.Enviorment.AppDomain app)
+        {
+            BindingFlags flag = BindingFlags.Public | BindingFlags.Instance | BindingFlags.Static | BindingFlags.DeclaredOnly;
+            MethodBase method;
+            Type[] args;
+            Type type = typeof(ET.ListComponent<System.Threading.Tasks.Task>);
+            args = new Type[]{};
+            method = type.GetMethod("Create", flag, null, args, null);
+            app.RegisterCLRMethodRedirection(method, Create_0);
+            args = new Type[]{typeof(System.Threading.Tasks.Task)};
+            method = type.GetMethod("Add", flag, null, args, null);
+            app.RegisterCLRMethodRedirection(method, Add_1);
+            args = new Type[]{};
+            method = type.GetMethod("get_List", flag, null, args, null);
+            app.RegisterCLRMethodRedirection(method, get_List_2);
+
+
+        }
+
+
+        static StackObject* Create_0(ILIntepreter __intp, StackObject* __esp, IList<object> __mStack, CLRMethod __method, bool isNewObj)
+        {
+            ILRuntime.Runtime.Enviorment.AppDomain __domain = __intp.AppDomain;
+            StackObject* __ret = ILIntepreter.Minus(__esp, 0);
+
+
+            var result_of_this_method = ET.ListComponent<System.Threading.Tasks.Task>.Create();
+
+            return ILIntepreter.PushObject(__ret, __mStack, result_of_this_method);
+        }
+
+        static StackObject* Add_1(ILIntepreter __intp, StackObject* __esp, IList<object> __mStack, CLRMethod __method, bool isNewObj)
+        {
+            ILRuntime.Runtime.Enviorment.AppDomain __domain = __intp.AppDomain;
+            StackObject* ptr_of_this_method;
+            StackObject* __ret = ILIntepreter.Minus(__esp, 2);
+
+            ptr_of_this_method = ILIntepreter.Minus(__esp, 1);
+            System.Threading.Tasks.Task @t = (System.Threading.Tasks.Task)typeof(System.Threading.Tasks.Task).CheckCLRTypes(StackObject.ToObject(ptr_of_this_method, __domain, __mStack), (CLR.Utils.Extensions.TypeFlags)0);
+            __intp.Free(ptr_of_this_method);
+
+            ptr_of_this_method = ILIntepreter.Minus(__esp, 2);
+            ET.ListComponent<System.Threading.Tasks.Task> instance_of_this_method = (ET.ListComponent<System.Threading.Tasks.Task>)typeof(ET.ListComponent<System.Threading.Tasks.Task>).CheckCLRTypes(StackObject.ToObject(ptr_of_this_method, __domain, __mStack), (CLR.Utils.Extensions.TypeFlags)0);
+            __intp.Free(ptr_of_this_method);
+
+            instance_of_this_method.Add(@t);
+
+            return __ret;
+        }
+
+        static StackObject* get_List_2(ILIntepreter __intp, StackObject* __esp, IList<object> __mStack, CLRMethod __method, bool isNewObj)
+        {
+            ILRuntime.Runtime.Enviorment.AppDomain __domain = __intp.AppDomain;
+            StackObject* ptr_of_this_method;
+            StackObject* __ret = ILIntepreter.Minus(__esp, 1);
+
+            ptr_of_this_method = ILIntepreter.Minus(__esp, 1);
+            ET.ListComponent<System.Threading.Tasks.Task> instance_of_this_method = (ET.ListComponent<System.Threading.Tasks.Task>)typeof(ET.ListComponent<System.Threading.Tasks.Task>).CheckCLRTypes(StackObject.ToObject(ptr_of_this_method, __domain, __mStack), (CLR.Utils.Extensions.TypeFlags)0);
+            __intp.Free(ptr_of_this_method);
+
+            var result_of_this_method = instance_of_this_method.List;
+
+            return ILIntepreter.PushObject(__ret, __mStack, result_of_this_method);
+        }
+
+
+
+    }
+}

+ 11 - 0
Unity/Assets/Mono/ILRuntime/Generate/ET_ListComponent_1_Task_Binding.cs.meta

@@ -0,0 +1,11 @@
+fileFormatVersion: 2
+guid: 6457d9c5a22764449a2b8ef72cad3f4d
+MonoImporter:
+  externalObjects: {}
+  serializedVersion: 2
+  defaultReferences: []
+  executionOrder: 0
+  icon: {instanceID: 0}
+  userData: 
+  assetBundleName: 
+  assetBundleVariant: 

+ 87 - 0
Unity/Assets/Mono/ILRuntime/Generate/ET_ListComponent_1_Vector3_Binding.cs

@@ -0,0 +1,87 @@
+using System;
+using System.Collections.Generic;
+using System.Linq;
+using System.Reflection;
+using System.Runtime.InteropServices;
+
+using ILRuntime.CLR.TypeSystem;
+using ILRuntime.CLR.Method;
+using ILRuntime.Runtime.Enviorment;
+using ILRuntime.Runtime.Intepreter;
+using ILRuntime.Runtime.Stack;
+using ILRuntime.Reflection;
+using ILRuntime.CLR.Utils;
+
+namespace ILRuntime.Runtime.Generated
+{
+    unsafe class ET_ListComponent_1_Vector3_Binding
+    {
+        public static void Register(ILRuntime.Runtime.Enviorment.AppDomain app)
+        {
+            BindingFlags flag = BindingFlags.Public | BindingFlags.Instance | BindingFlags.Static | BindingFlags.DeclaredOnly;
+            MethodBase method;
+            Type[] args;
+            Type type = typeof(ET.ListComponent<UnityEngine.Vector3>);
+            args = new Type[]{};
+            method = type.GetMethod("Create", flag, null, args, null);
+            app.RegisterCLRMethodRedirection(method, Create_0);
+            args = new Type[]{typeof(UnityEngine.Vector3)};
+            method = type.GetMethod("Add", flag, null, args, null);
+            app.RegisterCLRMethodRedirection(method, Add_1);
+            args = new Type[]{};
+            method = type.GetMethod("get_List", flag, null, args, null);
+            app.RegisterCLRMethodRedirection(method, get_List_2);
+
+
+        }
+
+
+        static StackObject* Create_0(ILIntepreter __intp, StackObject* __esp, IList<object> __mStack, CLRMethod __method, bool isNewObj)
+        {
+            ILRuntime.Runtime.Enviorment.AppDomain __domain = __intp.AppDomain;
+            StackObject* __ret = ILIntepreter.Minus(__esp, 0);
+
+
+            var result_of_this_method = ET.ListComponent<UnityEngine.Vector3>.Create();
+
+            return ILIntepreter.PushObject(__ret, __mStack, result_of_this_method);
+        }
+
+        static StackObject* Add_1(ILIntepreter __intp, StackObject* __esp, IList<object> __mStack, CLRMethod __method, bool isNewObj)
+        {
+            ILRuntime.Runtime.Enviorment.AppDomain __domain = __intp.AppDomain;
+            StackObject* ptr_of_this_method;
+            StackObject* __ret = ILIntepreter.Minus(__esp, 2);
+
+            ptr_of_this_method = ILIntepreter.Minus(__esp, 1);
+            UnityEngine.Vector3 @t = (UnityEngine.Vector3)typeof(UnityEngine.Vector3).CheckCLRTypes(StackObject.ToObject(ptr_of_this_method, __domain, __mStack), (CLR.Utils.Extensions.TypeFlags)16);
+            __intp.Free(ptr_of_this_method);
+
+            ptr_of_this_method = ILIntepreter.Minus(__esp, 2);
+            ET.ListComponent<UnityEngine.Vector3> instance_of_this_method = (ET.ListComponent<UnityEngine.Vector3>)typeof(ET.ListComponent<UnityEngine.Vector3>).CheckCLRTypes(StackObject.ToObject(ptr_of_this_method, __domain, __mStack), (CLR.Utils.Extensions.TypeFlags)0);
+            __intp.Free(ptr_of_this_method);
+
+            instance_of_this_method.Add(@t);
+
+            return __ret;
+        }
+
+        static StackObject* get_List_2(ILIntepreter __intp, StackObject* __esp, IList<object> __mStack, CLRMethod __method, bool isNewObj)
+        {
+            ILRuntime.Runtime.Enviorment.AppDomain __domain = __intp.AppDomain;
+            StackObject* ptr_of_this_method;
+            StackObject* __ret = ILIntepreter.Minus(__esp, 1);
+
+            ptr_of_this_method = ILIntepreter.Minus(__esp, 1);
+            ET.ListComponent<UnityEngine.Vector3> instance_of_this_method = (ET.ListComponent<UnityEngine.Vector3>)typeof(ET.ListComponent<UnityEngine.Vector3>).CheckCLRTypes(StackObject.ToObject(ptr_of_this_method, __domain, __mStack), (CLR.Utils.Extensions.TypeFlags)0);
+            __intp.Free(ptr_of_this_method);
+
+            var result_of_this_method = instance_of_this_method.List;
+
+            return ILIntepreter.PushObject(__ret, __mStack, result_of_this_method);
+        }
+
+
+
+    }
+}

+ 11 - 0
Unity/Assets/Mono/ILRuntime/Generate/ET_ListComponent_1_Vector3_Binding.cs.meta

@@ -0,0 +1,11 @@
+fileFormatVersion: 2
+guid: 2acbba3f7e370f34dba209ea2f6c415f
+MonoImporter:
+  externalObjects: {}
+  serializedVersion: 2
+  defaultReferences: []
+  executionOrder: 0
+  icon: {instanceID: 0}
+  userData: 
+  assetBundleName: 
+  assetBundleVariant: 

+ 2 - 37
Unity/Assets/Mono/ILRuntime/Generate/System_Collections_Generic_List_1_ETTask_Binding.cs

@@ -22,40 +22,15 @@ namespace ILRuntime.Runtime.Generated
             MethodBase method;
             Type[] args;
             Type type = typeof(System.Collections.Generic.List<ET.ETTask>);
-            args = new Type[]{typeof(ET.ETTask)};
-            method = type.GetMethod("Add", flag, null, args, null);
-            app.RegisterCLRMethodRedirection(method, Add_0);
             args = new Type[]{};
             method = type.GetMethod("Clear", flag, null, args, null);
-            app.RegisterCLRMethodRedirection(method, Clear_1);
+            app.RegisterCLRMethodRedirection(method, Clear_0);
 
-            args = new Type[]{};
-            method = type.GetConstructor(flag, null, args, null);
-            app.RegisterCLRMethodRedirection(method, Ctor_0);
 
         }
 
 
-        static StackObject* Add_0(ILIntepreter __intp, StackObject* __esp, IList<object> __mStack, CLRMethod __method, bool isNewObj)
-        {
-            ILRuntime.Runtime.Enviorment.AppDomain __domain = __intp.AppDomain;
-            StackObject* ptr_of_this_method;
-            StackObject* __ret = ILIntepreter.Minus(__esp, 2);
-
-            ptr_of_this_method = ILIntepreter.Minus(__esp, 1);
-            ET.ETTask @item = (ET.ETTask)typeof(ET.ETTask).CheckCLRTypes(StackObject.ToObject(ptr_of_this_method, __domain, __mStack), (CLR.Utils.Extensions.TypeFlags)0);
-            __intp.Free(ptr_of_this_method);
-
-            ptr_of_this_method = ILIntepreter.Minus(__esp, 2);
-            System.Collections.Generic.List<ET.ETTask> instance_of_this_method = (System.Collections.Generic.List<ET.ETTask>)typeof(System.Collections.Generic.List<ET.ETTask>).CheckCLRTypes(StackObject.ToObject(ptr_of_this_method, __domain, __mStack), (CLR.Utils.Extensions.TypeFlags)0);
-            __intp.Free(ptr_of_this_method);
-
-            instance_of_this_method.Add(@item);
-
-            return __ret;
-        }
-
-        static StackObject* Clear_1(ILIntepreter __intp, StackObject* __esp, IList<object> __mStack, CLRMethod __method, bool isNewObj)
+        static StackObject* Clear_0(ILIntepreter __intp, StackObject* __esp, IList<object> __mStack, CLRMethod __method, bool isNewObj)
         {
             ILRuntime.Runtime.Enviorment.AppDomain __domain = __intp.AppDomain;
             StackObject* ptr_of_this_method;
@@ -71,16 +46,6 @@ namespace ILRuntime.Runtime.Generated
         }
 
 
-        static StackObject* Ctor_0(ILIntepreter __intp, StackObject* __esp, IList<object> __mStack, CLRMethod __method, bool isNewObj)
-        {
-            ILRuntime.Runtime.Enviorment.AppDomain __domain = __intp.AppDomain;
-            StackObject* __ret = ILIntepreter.Minus(__esp, 0);
-
-            var result_of_this_method = new System.Collections.Generic.List<ET.ETTask>();
-
-            return ILIntepreter.PushObject(__ret, __mStack, result_of_this_method);
-        }
-
 
     }
 }

+ 0 - 18
Unity/Assets/Mono/ILRuntime/Generate/System_Collections_Generic_List_1_String_Binding.cs

@@ -40,9 +40,6 @@ namespace ILRuntime.Runtime.Generated
             args = new Type[]{typeof(System.Collections.Generic.IEnumerable<System.String>)};
             method = type.GetMethod("AddRange", flag, null, args, null);
             app.RegisterCLRMethodRedirection(method, AddRange_5);
-            args = new Type[]{};
-            method = type.GetMethod("Clear", flag, null, args, null);
-            app.RegisterCLRMethodRedirection(method, Clear_6);
 
             args = new Type[]{};
             method = type.GetConstructor(flag, null, args, null);
@@ -160,21 +157,6 @@ namespace ILRuntime.Runtime.Generated
             return __ret;
         }
 
-        static StackObject* Clear_6(ILIntepreter __intp, StackObject* __esp, IList<object> __mStack, CLRMethod __method, bool isNewObj)
-        {
-            ILRuntime.Runtime.Enviorment.AppDomain __domain = __intp.AppDomain;
-            StackObject* ptr_of_this_method;
-            StackObject* __ret = ILIntepreter.Minus(__esp, 1);
-
-            ptr_of_this_method = ILIntepreter.Minus(__esp, 1);
-            System.Collections.Generic.List<System.String> instance_of_this_method = (System.Collections.Generic.List<System.String>)typeof(System.Collections.Generic.List<System.String>).CheckCLRTypes(StackObject.ToObject(ptr_of_this_method, __domain, __mStack), (CLR.Utils.Extensions.TypeFlags)0);
-            __intp.Free(ptr_of_this_method);
-
-            instance_of_this_method.Clear();
-
-            return __ret;
-        }
-
 
         static StackObject* Ctor_0(ILIntepreter __intp, StackObject* __esp, IList<object> __mStack, CLRMethod __method, bool isNewObj)
         {

+ 2 - 37
Unity/Assets/Mono/ILRuntime/Generate/System_Collections_Generic_List_1_Task_Binding.cs

@@ -22,40 +22,15 @@ namespace ILRuntime.Runtime.Generated
             MethodBase method;
             Type[] args;
             Type type = typeof(System.Collections.Generic.List<System.Threading.Tasks.Task>);
-            args = new Type[]{typeof(System.Threading.Tasks.Task)};
-            method = type.GetMethod("Add", flag, null, args, null);
-            app.RegisterCLRMethodRedirection(method, Add_0);
             args = new Type[]{};
             method = type.GetMethod("ToArray", flag, null, args, null);
-            app.RegisterCLRMethodRedirection(method, ToArray_1);
+            app.RegisterCLRMethodRedirection(method, ToArray_0);
 
-            args = new Type[]{};
-            method = type.GetConstructor(flag, null, args, null);
-            app.RegisterCLRMethodRedirection(method, Ctor_0);
 
         }
 
 
-        static StackObject* Add_0(ILIntepreter __intp, StackObject* __esp, IList<object> __mStack, CLRMethod __method, bool isNewObj)
-        {
-            ILRuntime.Runtime.Enviorment.AppDomain __domain = __intp.AppDomain;
-            StackObject* ptr_of_this_method;
-            StackObject* __ret = ILIntepreter.Minus(__esp, 2);
-
-            ptr_of_this_method = ILIntepreter.Minus(__esp, 1);
-            System.Threading.Tasks.Task @item = (System.Threading.Tasks.Task)typeof(System.Threading.Tasks.Task).CheckCLRTypes(StackObject.ToObject(ptr_of_this_method, __domain, __mStack), (CLR.Utils.Extensions.TypeFlags)0);
-            __intp.Free(ptr_of_this_method);
-
-            ptr_of_this_method = ILIntepreter.Minus(__esp, 2);
-            System.Collections.Generic.List<System.Threading.Tasks.Task> instance_of_this_method = (System.Collections.Generic.List<System.Threading.Tasks.Task>)typeof(System.Collections.Generic.List<System.Threading.Tasks.Task>).CheckCLRTypes(StackObject.ToObject(ptr_of_this_method, __domain, __mStack), (CLR.Utils.Extensions.TypeFlags)0);
-            __intp.Free(ptr_of_this_method);
-
-            instance_of_this_method.Add(@item);
-
-            return __ret;
-        }
-
-        static StackObject* ToArray_1(ILIntepreter __intp, StackObject* __esp, IList<object> __mStack, CLRMethod __method, bool isNewObj)
+        static StackObject* ToArray_0(ILIntepreter __intp, StackObject* __esp, IList<object> __mStack, CLRMethod __method, bool isNewObj)
         {
             ILRuntime.Runtime.Enviorment.AppDomain __domain = __intp.AppDomain;
             StackObject* ptr_of_this_method;
@@ -71,16 +46,6 @@ namespace ILRuntime.Runtime.Generated
         }
 
 
-        static StackObject* Ctor_0(ILIntepreter __intp, StackObject* __esp, IList<object> __mStack, CLRMethod __method, bool isNewObj)
-        {
-            ILRuntime.Runtime.Enviorment.AppDomain __domain = __intp.AppDomain;
-            StackObject* __ret = ILIntepreter.Minus(__esp, 0);
-
-            var result_of_this_method = new System.Collections.Generic.List<System.Threading.Tasks.Task>();
-
-            return ILIntepreter.PushObject(__ret, __mStack, result_of_this_method);
-        }
-
 
     }
 }

+ 14 - 14
Unity/Assets/Mono/ILRuntime/Generate/System_Collections_Generic_List_1_Vector3_Binding.cs

@@ -28,12 +28,12 @@ namespace ILRuntime.Runtime.Generated
             args = new Type[]{};
             method = type.GetMethod("get_Count", flag, null, args, null);
             app.RegisterCLRMethodRedirection(method, get_Count_1);
-            args = new Type[]{typeof(UnityEngine.Vector3)};
-            method = type.GetMethod("Add", flag, null, args, null);
-            app.RegisterCLRMethodRedirection(method, Add_2);
             args = new Type[]{};
             method = type.GetMethod("Clear", flag, null, args, null);
-            app.RegisterCLRMethodRedirection(method, Clear_3);
+            app.RegisterCLRMethodRedirection(method, Clear_2);
+            args = new Type[]{typeof(UnityEngine.Vector3)};
+            method = type.GetMethod("Add", flag, null, args, null);
+            app.RegisterCLRMethodRedirection(method, Add_3);
             args = new Type[]{};
             method = type.GetMethod("GetEnumerator", flag, null, args, null);
             app.RegisterCLRMethodRedirection(method, GetEnumerator_4);
@@ -80,36 +80,36 @@ namespace ILRuntime.Runtime.Generated
             return __ret + 1;
         }
 
-        static StackObject* Add_2(ILIntepreter __intp, StackObject* __esp, IList<object> __mStack, CLRMethod __method, bool isNewObj)
+        static StackObject* Clear_2(ILIntepreter __intp, StackObject* __esp, IList<object> __mStack, CLRMethod __method, bool isNewObj)
         {
             ILRuntime.Runtime.Enviorment.AppDomain __domain = __intp.AppDomain;
             StackObject* ptr_of_this_method;
-            StackObject* __ret = ILIntepreter.Minus(__esp, 2);
+            StackObject* __ret = ILIntepreter.Minus(__esp, 1);
 
             ptr_of_this_method = ILIntepreter.Minus(__esp, 1);
-            UnityEngine.Vector3 @item = (UnityEngine.Vector3)typeof(UnityEngine.Vector3).CheckCLRTypes(StackObject.ToObject(ptr_of_this_method, __domain, __mStack), (CLR.Utils.Extensions.TypeFlags)16);
-            __intp.Free(ptr_of_this_method);
-
-            ptr_of_this_method = ILIntepreter.Minus(__esp, 2);
             System.Collections.Generic.List<UnityEngine.Vector3> instance_of_this_method = (System.Collections.Generic.List<UnityEngine.Vector3>)typeof(System.Collections.Generic.List<UnityEngine.Vector3>).CheckCLRTypes(StackObject.ToObject(ptr_of_this_method, __domain, __mStack), (CLR.Utils.Extensions.TypeFlags)0);
             __intp.Free(ptr_of_this_method);
 
-            instance_of_this_method.Add(@item);
+            instance_of_this_method.Clear();
 
             return __ret;
         }
 
-        static StackObject* Clear_3(ILIntepreter __intp, StackObject* __esp, IList<object> __mStack, CLRMethod __method, bool isNewObj)
+        static StackObject* Add_3(ILIntepreter __intp, StackObject* __esp, IList<object> __mStack, CLRMethod __method, bool isNewObj)
         {
             ILRuntime.Runtime.Enviorment.AppDomain __domain = __intp.AppDomain;
             StackObject* ptr_of_this_method;
-            StackObject* __ret = ILIntepreter.Minus(__esp, 1);
+            StackObject* __ret = ILIntepreter.Minus(__esp, 2);
 
             ptr_of_this_method = ILIntepreter.Minus(__esp, 1);
+            UnityEngine.Vector3 @item = (UnityEngine.Vector3)typeof(UnityEngine.Vector3).CheckCLRTypes(StackObject.ToObject(ptr_of_this_method, __domain, __mStack), (CLR.Utils.Extensions.TypeFlags)16);
+            __intp.Free(ptr_of_this_method);
+
+            ptr_of_this_method = ILIntepreter.Minus(__esp, 2);
             System.Collections.Generic.List<UnityEngine.Vector3> instance_of_this_method = (System.Collections.Generic.List<UnityEngine.Vector3>)typeof(System.Collections.Generic.List<UnityEngine.Vector3>).CheckCLRTypes(StackObject.ToObject(ptr_of_this_method, __domain, __mStack), (CLR.Utils.Extensions.TypeFlags)0);
             __intp.Free(ptr_of_this_method);
 
-            instance_of_this_method.Clear();
+            instance_of_this_method.Add(@item);
 
             return __ret;
         }

+ 1 - 1
Unity/Assets/ThirdParty/ILRuntime/Plugins.meta → Unity/Assets/ThirdParty/ILRuntime/ILRuntime.meta

@@ -1,5 +1,5 @@
 fileFormatVersion: 2
-guid: 0ac2055d2bb5e52449d08ba0d6f6a07a
+guid: 2164f824ea1522e44a6c485722b7cc56
 folderAsset: yes
 DefaultImporter:
   externalObjects: {}

+ 1 - 1
Unity/Assets/ThirdParty/ILRuntime/CLR.meta → Unity/Assets/ThirdParty/ILRuntime/ILRuntime/CLR.meta

@@ -1,5 +1,5 @@
 fileFormatVersion: 2
-guid: a2095eae00e58c843af5d186ae280b2a
+guid: 37a1f345d1767944d9bd70d348f1e750
 folderAsset: yes
 DefaultImporter:
   externalObjects: {}

+ 1 - 1
Unity/Assets/ThirdParty/ILRuntime/CLR/Method.meta → Unity/Assets/ThirdParty/ILRuntime/ILRuntime/CLR/Method.meta

@@ -1,5 +1,5 @@
 fileFormatVersion: 2
-guid: c948e8b049d230a42be4f5904d142ccd
+guid: 3467b611d2fdb994fb3097fe8f4faa58
 folderAsset: yes
 DefaultImporter:
   externalObjects: {}

+ 3 - 9
Unity/Assets/ThirdParty/ILRuntime/CLR/Method/CLRMethod.cs → Unity/Assets/ThirdParty/ILRuntime/ILRuntime/CLR/Method/CLRMethod.cs

@@ -51,23 +51,17 @@ namespace ILRuntime.CLR.Method
                 return isConstructor ? !cDef.IsStatic : !def.IsStatic;
             }
         }
-
-        int _genericParameterCount = -1;
         public int GenericParameterCount
         {
             get
             {
-                if (_genericParameterCount == -1)
+                if (def.ContainsGenericParameters && def.IsGenericMethodDefinition)
                 {
-                    if (def.ContainsGenericParameters && def.IsGenericMethodDefinition)
-                        _genericParameterCount = def.GetGenericArguments().Length;
-                    else
-                        _genericParameterCount = 0;
+                    return def.GetGenericArguments().Length;
                 }
-                return _genericParameterCount;
+                return 0;
             }
         }
-
         public bool IsGenericInstance
         {
             get

+ 1 - 1
Unity/Assets/ThirdParty/ILRuntime/CLR/Method/CLRMethod.cs.meta → Unity/Assets/ThirdParty/ILRuntime/ILRuntime/CLR/Method/CLRMethod.cs.meta

@@ -1,5 +1,5 @@
 fileFormatVersion: 2
-guid: 91bc358f055ca3b4292bd3c8ab13db82
+guid: 73fd5d3f47646bb4fa1a76acc50bf478
 MonoImporter:
   externalObjects: {}
   serializedVersion: 2

+ 0 - 0
Unity/Assets/ThirdParty/ILRuntime/CLR/Method/ExceptionHandler.cs → Unity/Assets/ThirdParty/ILRuntime/ILRuntime/CLR/Method/ExceptionHandler.cs


+ 1 - 1
Unity/Assets/ThirdParty/ILRuntime/CLR/Method/ExceptionHandler.cs.meta → Unity/Assets/ThirdParty/ILRuntime/ILRuntime/CLR/Method/ExceptionHandler.cs.meta

@@ -1,5 +1,5 @@
 fileFormatVersion: 2
-guid: 280c4ccf26e67234b9929268eb261a7f
+guid: 2584e8ec9fff3984d875477b8831f88a
 MonoImporter:
   externalObjects: {}
   serializedVersion: 2

+ 0 - 0
Unity/Assets/ThirdParty/ILRuntime/CLR/Method/ILMethod.cs → Unity/Assets/ThirdParty/ILRuntime/ILRuntime/CLR/Method/ILMethod.cs


+ 1 - 1
Unity/Assets/ThirdParty/ILRuntime/CLR/Method/ILMethod.cs.meta → Unity/Assets/ThirdParty/ILRuntime/ILRuntime/CLR/Method/ILMethod.cs.meta

@@ -1,5 +1,5 @@
 fileFormatVersion: 2
-guid: cb80ea49347fd9d47b534656816f0008
+guid: 6d971b2fb8da3814cae9c8d7120da9ca
 MonoImporter:
   externalObjects: {}
   serializedVersion: 2

+ 0 - 0
Unity/Assets/ThirdParty/ILRuntime/CLR/Method/IMethod.cs → Unity/Assets/ThirdParty/ILRuntime/ILRuntime/CLR/Method/IMethod.cs


+ 1 - 1
Unity/Assets/ThirdParty/ILRuntime/CLR/Method/IMethod.cs.meta → Unity/Assets/ThirdParty/ILRuntime/ILRuntime/CLR/Method/IMethod.cs.meta

@@ -1,5 +1,5 @@
 fileFormatVersion: 2
-guid: 225ff7e89c70717469dcb4336d1d558d
+guid: f472c46b0b2510d4abc8bdfdd0b734b1
 MonoImporter:
   externalObjects: {}
   serializedVersion: 2

+ 1 - 1
Unity/Assets/ThirdParty/ILRuntime/CLR/TypeSystem.meta → Unity/Assets/ThirdParty/ILRuntime/ILRuntime/CLR/TypeSystem.meta

@@ -1,5 +1,5 @@
 fileFormatVersion: 2
-guid: 92c5a33ae6e7fad4fb343c467a7e35df
+guid: 5fab740352542ae479f8e7eb23470856
 folderAsset: yes
 DefaultImporter:
   externalObjects: {}

+ 8 - 11
Unity/Assets/ThirdParty/ILRuntime/CLR/TypeSystem/CLRType.cs → Unity/Assets/ThirdParty/ILRuntime/ILRuntime/CLR/TypeSystem/CLRType.cs

@@ -774,16 +774,14 @@ namespace ILRuntime.CLR.TypeSystem
             IMethod genericMethod = null;
             if (methods.TryGetValue(name, out lst))
             {
-                var paramCount = param.Count;
-
                 foreach (var i in lst)
                 {
-                    if (i.ParameterCount == paramCount)
+                    if (i.ParameterCount == param.Count)
                     {
                         bool match = true;
                         if (genericArguments != null && i.GenericParameterCount == genericArguments.Length)
                         {
-                            for (int j = 0; j < paramCount; j++)
+                            for (int j = 0; j < param.Count; j++)
                             {
                                 var p = i.Parameters[j].TypeForCLR;
                                 var q = param[j].TypeForCLR;
@@ -812,19 +810,18 @@ namespace ILRuntime.CLR.TypeSystem
                         }
                         else
                         {
-                            var iGenericArguments = i.GenericArguments;
                             if (genericArguments == null)
-                                match = iGenericArguments == null;
+                                match = i.GenericArguments == null;
                             else
                             {
-                                if (iGenericArguments == null)
+                                if (i.GenericArguments == null)
                                     match = false;
                                 else
-                                    match = iGenericArguments.Length == genericArguments.Length;
+                                    match = i.GenericArguments.Length == genericArguments.Length;
                             }
                             if (!match)
                                 continue;
-                            for (int j = 0; j < paramCount; j++)
+                            for (int j = 0; j < param.Count; j++)
                             {
                                 var typeA = /*param[j].TypeForCLR.IsByRef ? param[j].TypeForCLR.GetElementType() : */param[j].TypeForCLR;
                                 var typeB = /*i.Parameters[j].TypeForCLR.IsByRef ? i.Parameters[j].TypeForCLR.GetElementType() : */i.Parameters[j].TypeForCLR;
@@ -851,11 +848,11 @@ namespace ILRuntime.CLR.TypeSystem
 
                                 if (i.IsGenericInstance)
                                 {
-                                    if (iGenericArguments.Length == genericArguments.Length)
+                                    if (i.GenericArguments.Length == genericArguments.Length)
                                     {
                                         for (int j = 0; j < genericArguments.Length; j++)
                                         {
-                                            if (iGenericArguments[j] != genericArguments[j])
+                                            if (i.GenericArguments[j] != genericArguments[j])
                                             {
                                                 match = false;
                                                 break;

+ 1 - 1
Unity/Assets/ThirdParty/ILRuntime/CLR/TypeSystem/CLRType.cs.meta → Unity/Assets/ThirdParty/ILRuntime/ILRuntime/CLR/TypeSystem/CLRType.cs.meta

@@ -1,5 +1,5 @@
 fileFormatVersion: 2
-guid: e7d4ea0edb97e7148850fa54f68ede26
+guid: ce5806c3d349aa045b398370279461fb
 MonoImporter:
   externalObjects: {}
   serializedVersion: 2

+ 0 - 0
Unity/Assets/ThirdParty/ILRuntime/CLR/TypeSystem/ILGenericParameterType.cs → Unity/Assets/ThirdParty/ILRuntime/ILRuntime/CLR/TypeSystem/ILGenericParameterType.cs


+ 1 - 1
Unity/Assets/ThirdParty/ILRuntime/CLR/TypeSystem/ILGenericParameterType.cs.meta → Unity/Assets/ThirdParty/ILRuntime/ILRuntime/CLR/TypeSystem/ILGenericParameterType.cs.meta

@@ -1,5 +1,5 @@
 fileFormatVersion: 2
-guid: 4ebb6cf70d4407d40b8e2f63fd3818cd
+guid: f225ee5fde48ee64e90a6b26b78d8943
 MonoImporter:
   externalObjects: {}
   serializedVersion: 2

+ 0 - 0
Unity/Assets/ThirdParty/ILRuntime/CLR/TypeSystem/ILType.cs → Unity/Assets/ThirdParty/ILRuntime/ILRuntime/CLR/TypeSystem/ILType.cs


+ 1 - 1
Unity/Assets/ThirdParty/ILRuntime/CLR/TypeSystem/ILType.cs.meta → Unity/Assets/ThirdParty/ILRuntime/ILRuntime/CLR/TypeSystem/ILType.cs.meta

@@ -1,5 +1,5 @@
 fileFormatVersion: 2
-guid: 7b0a95230688d984d93263837db66219
+guid: 1b94714cbf3601e4d860b6c994e05caf
 MonoImporter:
   externalObjects: {}
   serializedVersion: 2

+ 0 - 0
Unity/Assets/ThirdParty/ILRuntime/CLR/TypeSystem/IType.cs → Unity/Assets/ThirdParty/ILRuntime/ILRuntime/CLR/TypeSystem/IType.cs


+ 1 - 1
Unity/Assets/ThirdParty/ILRuntime/CLR/TypeSystem/IType.cs.meta → Unity/Assets/ThirdParty/ILRuntime/ILRuntime/CLR/TypeSystem/IType.cs.meta

@@ -1,5 +1,5 @@
 fileFormatVersion: 2
-guid: 317452cc72a74214abf109a7d542d0d0
+guid: 1724cebac47b8e640aeb42a83811530f
 MonoImporter:
   externalObjects: {}
   serializedVersion: 2

+ 1 - 1
Unity/Assets/ThirdParty/ILRuntime/CLR/Utils.meta → Unity/Assets/ThirdParty/ILRuntime/ILRuntime/CLR/Utils.meta

@@ -1,5 +1,5 @@
 fileFormatVersion: 2
-guid: c87e1a802cc5f114198b16afec6d31aa
+guid: 25cc9e3da172b4b4f87de7fbfc2b49e7
 folderAsset: yes
 DefaultImporter:
   externalObjects: {}

+ 0 - 4
Unity/Assets/ThirdParty/ILRuntime/CLR/Utils/Extensions.cs → Unity/Assets/ThirdParty/ILRuntime/ILRuntime/CLR/Utils/Extensions.cs

@@ -111,10 +111,6 @@ namespace ILRuntime.CLR.Utils
             }
             else
             {
-                if (baseType.Contains("["))
-                {
-                    baseType = ReplaceGenericArgument(baseType, argumentName, argumentType, isGA);
-                }
                 bool isAssemblyQualified = baseType.Contains('=');
                 if (isGA && !hasGA && isAssemblyQualified)
                     sb.Append('[');

+ 1 - 1
Unity/Assets/ThirdParty/ILRuntime/CLR/Utils/Extensions.cs.meta → Unity/Assets/ThirdParty/ILRuntime/ILRuntime/CLR/Utils/Extensions.cs.meta

@@ -1,5 +1,5 @@
 fileFormatVersion: 2
-guid: d792ac021f4511c498aee4511e667e3c
+guid: a97b4126041c7b44ca2f13852ab0b7a4
 MonoImporter:
   externalObjects: {}
   serializedVersion: 2

+ 1 - 1
Unity/Assets/ThirdParty/ILRuntime/Other.meta → Unity/Assets/ThirdParty/ILRuntime/ILRuntime/Other.meta

@@ -1,5 +1,5 @@
 fileFormatVersion: 2
-guid: af59cca1877411f468c5dca02cbc9a62
+guid: a9f5db17f57be53408f41aae36aafd8f
 folderAsset: yes
 DefaultImporter:
   externalObjects: {}

+ 0 - 0
Unity/Assets/ThirdParty/ILRuntime/Other/ByReferenceKeyComparer.cs → Unity/Assets/ThirdParty/ILRuntime/ILRuntime/Other/ByReferenceKeyComparer.cs


+ 1 - 1
Unity/Assets/ThirdParty/ILRuntime/Other/ByReferenceKeyComparer.cs.meta → Unity/Assets/ThirdParty/ILRuntime/ILRuntime/Other/ByReferenceKeyComparer.cs.meta

@@ -1,5 +1,5 @@
 fileFormatVersion: 2
-guid: 865d1a51aadc39546b4359c3b5830eb9
+guid: d9dc1745b75f33141a8a220fe0651573
 MonoImporter:
   externalObjects: {}
   serializedVersion: 2

+ 0 - 0
Unity/Assets/ThirdParty/ILRuntime/Other/DelegateExportAttribute.cs → Unity/Assets/ThirdParty/ILRuntime/ILRuntime/Other/DelegateExportAttribute.cs


+ 1 - 1
Unity/Assets/ThirdParty/ILRuntime/Other/DelegateExportAttribute.cs.meta → Unity/Assets/ThirdParty/ILRuntime/ILRuntime/Other/DelegateExportAttribute.cs.meta

@@ -1,5 +1,5 @@
 fileFormatVersion: 2
-guid: ed38da9a2c3288b40baa1b9f74c11b5e
+guid: 01af11ffde7e3a245be3cac75e50014d
 MonoImporter:
   externalObjects: {}
   serializedVersion: 2

+ 0 - 0
Unity/Assets/ThirdParty/ILRuntime/Other/NeedAdaptorAttribute.cs → Unity/Assets/ThirdParty/ILRuntime/ILRuntime/Other/NeedAdaptorAttribute.cs


+ 1 - 1
Unity/Assets/ThirdParty/ILRuntime/Other/NeedAdaptorAttribute.cs.meta → Unity/Assets/ThirdParty/ILRuntime/ILRuntime/Other/NeedAdaptorAttribute.cs.meta

@@ -1,5 +1,5 @@
 fileFormatVersion: 2
-guid: 29cadb30f68d98c48834a10c14e3792e
+guid: e93b52b56e9465a42a5400ad0346cf9c
 MonoImporter:
   externalObjects: {}
   serializedVersion: 2

+ 0 - 0
Unity/Assets/ThirdParty/ILRuntime/Other/ThreadSafeDictionary.cs → Unity/Assets/ThirdParty/ILRuntime/ILRuntime/Other/ThreadSafeDictionary.cs


+ 1 - 1
Unity/Assets/ThirdParty/ILRuntime/Other/ThreadSafeDictionary.cs.meta → Unity/Assets/ThirdParty/ILRuntime/ILRuntime/Other/ThreadSafeDictionary.cs.meta

@@ -1,5 +1,5 @@
 fileFormatVersion: 2
-guid: 67117ee4280afc947a91a715335bcf2f
+guid: ccb3adf050b810443883396c9ea55d94
 MonoImporter:
   externalObjects: {}
   serializedVersion: 2

+ 0 - 0
Unity/Assets/ThirdParty/ILRuntime/Other/UncheckedList.cs → Unity/Assets/ThirdParty/ILRuntime/ILRuntime/Other/UncheckedList.cs


+ 1 - 1
Unity/Assets/ThirdParty/ILRuntime/Other/UncheckedList.cs.meta → Unity/Assets/ThirdParty/ILRuntime/ILRuntime/Other/UncheckedList.cs.meta

@@ -1,5 +1,5 @@
 fileFormatVersion: 2
-guid: d96c719483468e643a73e5d82cb51ba3
+guid: 328887d69a1ee0048ac13370c31112a8
 MonoImporter:
   externalObjects: {}
   serializedVersion: 2

+ 0 - 0
Unity/Assets/ThirdParty/ILRuntime/Other/UncheckedStack.cs → Unity/Assets/ThirdParty/ILRuntime/ILRuntime/Other/UncheckedStack.cs


+ 1 - 1
Unity/Assets/ThirdParty/ILRuntime/Other/UncheckedStack.cs.meta → Unity/Assets/ThirdParty/ILRuntime/ILRuntime/Other/UncheckedStack.cs.meta

@@ -1,5 +1,5 @@
 fileFormatVersion: 2
-guid: 552fe796f39a6b54f9360b858069d428
+guid: 057141185e8a86949989d3cab95cda84
 MonoImporter:
   externalObjects: {}
   serializedVersion: 2

+ 1 - 1
Unity/Assets/ThirdParty/ILRuntime/Reflection.meta → Unity/Assets/ThirdParty/ILRuntime/ILRuntime/Reflection.meta

@@ -1,5 +1,5 @@
 fileFormatVersion: 2
-guid: 3d9d577dd9552064eb3f8a627986a120
+guid: aadf70c9833aa6f49a857e88444a604b
 folderAsset: yes
 DefaultImporter:
   externalObjects: {}

+ 0 - 0
Unity/Assets/ThirdParty/ILRuntime/Reflection/Extensions.cs → Unity/Assets/ThirdParty/ILRuntime/ILRuntime/Reflection/Extensions.cs


+ 1 - 1
Unity/Assets/ThirdParty/ILRuntime/Reflection/Extensions.cs.meta → Unity/Assets/ThirdParty/ILRuntime/ILRuntime/Reflection/Extensions.cs.meta

@@ -1,5 +1,5 @@
 fileFormatVersion: 2
-guid: efb7fe81e2ef48942b530d0ed9621da2
+guid: 037e46a53e42bf747b9792731769a4fe
 MonoImporter:
   externalObjects: {}
   serializedVersion: 2

+ 0 - 0
Unity/Assets/ThirdParty/ILRuntime/Reflection/ILRuntimeConstructorInfo.cs → Unity/Assets/ThirdParty/ILRuntime/ILRuntime/Reflection/ILRuntimeConstructorInfo.cs


+ 1 - 1
Unity/Assets/ThirdParty/ILRuntime/Reflection/ILRuntimeConstructorInfo.cs.meta → Unity/Assets/ThirdParty/ILRuntime/ILRuntime/Reflection/ILRuntimeConstructorInfo.cs.meta

@@ -1,5 +1,5 @@
 fileFormatVersion: 2
-guid: 3c1c92f84ac13da4f816926fffa58c63
+guid: 7b6398c31bc8e5d4bb030037872d2def
 MonoImporter:
   externalObjects: {}
   serializedVersion: 2

+ 0 - 0
Unity/Assets/ThirdParty/ILRuntime/Reflection/ILRuntimeFieldInfo.cs → Unity/Assets/ThirdParty/ILRuntime/ILRuntime/Reflection/ILRuntimeFieldInfo.cs


+ 1 - 1
Unity/Assets/ThirdParty/ILRuntime/Reflection/ILRuntimeFieldInfo.cs.meta → Unity/Assets/ThirdParty/ILRuntime/ILRuntime/Reflection/ILRuntimeFieldInfo.cs.meta

@@ -1,5 +1,5 @@
 fileFormatVersion: 2
-guid: ef7c0d4675c1c0c42b5a4da56c80f436
+guid: 2ecf6fef816210c4580d32897298f817
 MonoImporter:
   externalObjects: {}
   serializedVersion: 2

+ 0 - 0
Unity/Assets/ThirdParty/ILRuntime/Reflection/ILRuntimeMethodInfo.cs → Unity/Assets/ThirdParty/ILRuntime/ILRuntime/Reflection/ILRuntimeMethodInfo.cs


+ 1 - 1
Unity/Assets/ThirdParty/ILRuntime/Reflection/ILRuntimeMethodInfo.cs.meta → Unity/Assets/ThirdParty/ILRuntime/ILRuntime/Reflection/ILRuntimeMethodInfo.cs.meta

@@ -1,5 +1,5 @@
 fileFormatVersion: 2
-guid: 570a55113d5ac4e4ebda6b5054d63be3
+guid: 220dc1f35432c7f42a5571be6bbf3b92
 MonoImporter:
   externalObjects: {}
   serializedVersion: 2

+ 0 - 0
Unity/Assets/ThirdParty/ILRuntime/Reflection/ILRuntimeParameterInfo.cs → Unity/Assets/ThirdParty/ILRuntime/ILRuntime/Reflection/ILRuntimeParameterInfo.cs


+ 1 - 1
Unity/Assets/ThirdParty/ILRuntime/Reflection/ILRuntimeParameterInfo.cs.meta → Unity/Assets/ThirdParty/ILRuntime/ILRuntime/Reflection/ILRuntimeParameterInfo.cs.meta

@@ -1,5 +1,5 @@
 fileFormatVersion: 2
-guid: e9447a2b8d7466b44b7c3c1ada1a59a8
+guid: 0d80de068f4b9c449b7e168dcc3209e6
 MonoImporter:
   externalObjects: {}
   serializedVersion: 2

+ 0 - 0
Unity/Assets/ThirdParty/ILRuntime/Reflection/ILRuntimePropertyInfo.cs → Unity/Assets/ThirdParty/ILRuntime/ILRuntime/Reflection/ILRuntimePropertyInfo.cs


+ 1 - 1
Unity/Assets/ThirdParty/ILRuntime/Reflection/ILRuntimePropertyInfo.cs.meta → Unity/Assets/ThirdParty/ILRuntime/ILRuntime/Reflection/ILRuntimePropertyInfo.cs.meta

@@ -1,5 +1,5 @@
 fileFormatVersion: 2
-guid: 2031b3577f7292844a92f7ce2819c2f9
+guid: 1b0e76ae34b96ac499ac1cd4ed27079b
 MonoImporter:
   externalObjects: {}
   serializedVersion: 2

+ 2 - 27
Unity/Assets/ThirdParty/ILRuntime/Reflection/ILRuntimeType.cs → Unity/Assets/ThirdParty/ILRuntime/ILRuntime/Reflection/ILRuntimeType.cs

@@ -390,27 +390,7 @@ namespace ILRuntime.Reflection
         {
             if (methods == null)
                 InitializeMethods();
-            bool isPublic = (bindingAttr & BindingFlags.Public) == BindingFlags.Public;
-            bool isPrivate = (bindingAttr & BindingFlags.NonPublic) == BindingFlags.NonPublic;
-            bool isStatic = (bindingAttr & BindingFlags.Static) == BindingFlags.Static;
-            bool isInstance = (bindingAttr & BindingFlags.Instance) == BindingFlags.Instance;
-            List<MethodInfo> res = new List<MethodInfo>();
-            foreach (var i in methods)
-            {
-                if (isPublic != i.IsPublic && isPrivate != !i.IsPublic)
-                    continue;
-                if ((isStatic != i.IsStatic) && (isInstance != !i.IsStatic))
-                    continue;
-                res.Add(i);
-            }
-            if ((bindingAttr & BindingFlags.DeclaredOnly) != BindingFlags.DeclaredOnly)
-            {
-                if (BaseType != null && (BaseType is ILRuntimeWrapperType || BaseType is ILRuntimeType))
-                {
-                    res.AddRange(BaseType.GetMethods(bindingAttr));
-                }
-            }
-            return res.ToArray();
+            return methods;
         }
 
         public override Type GetNestedType(string name, BindingFlags bindingAttr)
@@ -523,14 +503,8 @@ namespace ILRuntime.Reflection
         protected override MethodInfo GetMethodImpl(string name, BindingFlags bindingAttr, Binder binder, CallingConventions callConvention, Type[] types, ParameterModifier[] modifiers)
         {
             IMethod res;
-            bool declearedOnly = (bindingAttr & BindingFlags.DeclaredOnly) == BindingFlags.DeclaredOnly;
-
             if (types == null)
-            {
                 res = type.GetMethod(name);
-                if (res == null && !declearedOnly && type.BaseType is ILType)
-                    return BaseType.GetMethod(name, bindingAttr);
-            }
             else
             {
                 List<IType> param = new List<IType>();
@@ -548,6 +522,7 @@ namespace ILRuntime.Reflection
                         param.Add(t);
                     }
                 }
+                bool declearedOnly = (bindingAttr & BindingFlags.DeclaredOnly) == BindingFlags.DeclaredOnly;
                 res = type.GetMethod(name, param, null, null, declearedOnly);
             }
             if (res != null)

+ 1 - 1
Unity/Assets/ThirdParty/ILRuntime/Reflection/ILRuntimeType.cs.meta → Unity/Assets/ThirdParty/ILRuntime/ILRuntime/Reflection/ILRuntimeType.cs.meta

@@ -1,5 +1,5 @@
 fileFormatVersion: 2
-guid: 7f348f5b16e2e7041ab84b17b8305669
+guid: a23d9070e6543fa40984aae38b96b137
 MonoImporter:
   externalObjects: {}
   serializedVersion: 2

+ 0 - 0
Unity/Assets/ThirdParty/ILRuntime/Reflection/ILRuntimeWrapperType.cs → Unity/Assets/ThirdParty/ILRuntime/ILRuntime/Reflection/ILRuntimeWrapperType.cs


+ 1 - 1
Unity/Assets/ThirdParty/ILRuntime/Reflection/ILRuntimeWrapperType.cs.meta → Unity/Assets/ThirdParty/ILRuntime/ILRuntime/Reflection/ILRuntimeWrapperType.cs.meta

@@ -1,5 +1,5 @@
 fileFormatVersion: 2
-guid: bf48bf48ea367bf4090a5dd2f2253b04
+guid: 027ebdef0f8dc8b438aa84ac58775263
 MonoImporter:
   externalObjects: {}
   serializedVersion: 2

+ 1 - 1
Unity/Assets/ThirdParty/ILRuntime/Runtime.meta → Unity/Assets/ThirdParty/ILRuntime/ILRuntime/Runtime.meta

@@ -1,5 +1,5 @@
 fileFormatVersion: 2
-guid: 25f90c1bb06a71b499e7592aafae9d14
+guid: cf87ffde99ae5794f9eee86d57fade99
 folderAsset: yes
 DefaultImporter:
   externalObjects: {}

+ 1 - 1
Unity/Assets/ThirdParty/ILRuntime/Runtime/Adaptors.meta → Unity/Assets/ThirdParty/ILRuntime/ILRuntime/Runtime/Adaptors.meta

@@ -1,5 +1,5 @@
 fileFormatVersion: 2
-guid: a63a4e46222a38c4abc42dcc555a0cc9
+guid: cf16939bab129c34eac0f91c303c9bb8
 folderAsset: yes
 DefaultImporter:
   externalObjects: {}

+ 0 - 0
Unity/Assets/ThirdParty/ILRuntime/Runtime/Adaptors/CLRCrossBindingAdaptors.cs → Unity/Assets/ThirdParty/ILRuntime/ILRuntime/Runtime/Adaptors/CLRCrossBindingAdaptors.cs


+ 1 - 1
Unity/Assets/ThirdParty/ILRuntime/Runtime/Adaptors/CLRCrossBindingAdaptors.cs.meta → Unity/Assets/ThirdParty/ILRuntime/ILRuntime/Runtime/Adaptors/CLRCrossBindingAdaptors.cs.meta

@@ -1,5 +1,5 @@
 fileFormatVersion: 2
-guid: 3008fee705356f249b7fe74b39a3be89
+guid: 7bc06d5adef86c74389604ec1bfb4cc7
 MonoImporter:
   externalObjects: {}
   serializedVersion: 2

+ 1 - 1
Unity/Assets/ThirdParty/ILRuntime/Runtime/CLRBinding.meta → Unity/Assets/ThirdParty/ILRuntime/ILRuntime/Runtime/CLRBinding.meta

@@ -1,5 +1,5 @@
 fileFormatVersion: 2
-guid: 3aaa3ede802cef046aeb760e2a14163d
+guid: aa8e8b8889eb21e4dbeebaf85e13fd58
 folderAsset: yes
 DefaultImporter:
   externalObjects: {}

+ 0 - 0
Unity/Assets/ThirdParty/ILRuntime/Runtime/CLRBinding/BindingCodeGenerator.cs → Unity/Assets/ThirdParty/ILRuntime/ILRuntime/Runtime/CLRBinding/BindingCodeGenerator.cs


+ 1 - 1
Unity/Assets/ThirdParty/ILRuntime/Runtime/CLRBinding/BindingCodeGenerator.cs.meta → Unity/Assets/ThirdParty/ILRuntime/ILRuntime/Runtime/CLRBinding/BindingCodeGenerator.cs.meta

@@ -1,5 +1,5 @@
 fileFormatVersion: 2
-guid: f661a97e9e289574e9ce780bbcfacb30
+guid: a363a0d487f1d3b40b88dc5430a4de47
 MonoImporter:
   externalObjects: {}
   serializedVersion: 2

+ 0 - 0
Unity/Assets/ThirdParty/ILRuntime/Runtime/CLRBinding/BindingGeneratorExtensions.cs → Unity/Assets/ThirdParty/ILRuntime/ILRuntime/Runtime/CLRBinding/BindingGeneratorExtensions.cs


+ 1 - 1
Unity/Assets/ThirdParty/ILRuntime/Runtime/CLRBinding/BindingGeneratorExtensions.cs.meta → Unity/Assets/ThirdParty/ILRuntime/ILRuntime/Runtime/CLRBinding/BindingGeneratorExtensions.cs.meta

@@ -1,5 +1,5 @@
 fileFormatVersion: 2
-guid: 06c484fa3858dd84eab9ea0a4d9be6ef
+guid: e4dd57af90f3d2b469c7502a7ac6885e
 MonoImporter:
   externalObjects: {}
   serializedVersion: 2

+ 0 - 0
Unity/Assets/ThirdParty/ILRuntime/Runtime/CLRBinding/CLRBindingUtils.cs → Unity/Assets/ThirdParty/ILRuntime/ILRuntime/Runtime/CLRBinding/CLRBindingUtils.cs


+ 1 - 1
Unity/Assets/ThirdParty/ILRuntime/Runtime/CLRBinding/CLRBindingUtils.cs.meta → Unity/Assets/ThirdParty/ILRuntime/ILRuntime/Runtime/CLRBinding/CLRBindingUtils.cs.meta

@@ -1,5 +1,5 @@
 fileFormatVersion: 2
-guid: 735aab77a3e6b594ab8a5c4243d4a943
+guid: fbc5b0f5433f3d440a892fb4938d6090
 MonoImporter:
   externalObjects: {}
   serializedVersion: 2

+ 0 - 0
Unity/Assets/ThirdParty/ILRuntime/Runtime/CLRBinding/CommonBindingGenerator.cs → Unity/Assets/ThirdParty/ILRuntime/ILRuntime/Runtime/CLRBinding/CommonBindingGenerator.cs


+ 1 - 1
Unity/Assets/ThirdParty/ILRuntime/Runtime/CLRBinding/CommonBindingGenerator.cs.meta → Unity/Assets/ThirdParty/ILRuntime/ILRuntime/Runtime/CLRBinding/CommonBindingGenerator.cs.meta

@@ -1,5 +1,5 @@
 fileFormatVersion: 2
-guid: a2659b8757857934680e52d84c8e445a
+guid: 5f1164ce537183e48bbbd781285ac997
 MonoImporter:
   externalObjects: {}
   serializedVersion: 2

+ 0 - 0
Unity/Assets/ThirdParty/ILRuntime/Runtime/CLRBinding/ConstructorBindingGenerator.cs → Unity/Assets/ThirdParty/ILRuntime/ILRuntime/Runtime/CLRBinding/ConstructorBindingGenerator.cs


+ 1 - 1
Unity/Assets/ThirdParty/ILRuntime/Runtime/CLRBinding/ConstructorBindingGenerator.cs.meta → Unity/Assets/ThirdParty/ILRuntime/ILRuntime/Runtime/CLRBinding/ConstructorBindingGenerator.cs.meta

@@ -1,5 +1,5 @@
 fileFormatVersion: 2
-guid: 15069a2cb0e646347a9ecb81923d3afe
+guid: 8935b9ecbb051a4428f53cbc35068266
 MonoImporter:
   externalObjects: {}
   serializedVersion: 2

+ 0 - 0
Unity/Assets/ThirdParty/ILRuntime/Runtime/CLRBinding/FieldBindingGenerator.cs → Unity/Assets/ThirdParty/ILRuntime/ILRuntime/Runtime/CLRBinding/FieldBindingGenerator.cs


+ 1 - 1
Unity/Assets/ThirdParty/ILRuntime/Runtime/CLRBinding/FieldBindingGenerator.cs.meta → Unity/Assets/ThirdParty/ILRuntime/ILRuntime/Runtime/CLRBinding/FieldBindingGenerator.cs.meta

@@ -1,5 +1,5 @@
 fileFormatVersion: 2
-guid: cbd202114e1c8044b85c56f7cb8e98b3
+guid: 0b5b60739dd9e9f408e9fedb0a65fc9a
 MonoImporter:
   externalObjects: {}
   serializedVersion: 2

+ 0 - 6
Unity/Assets/ThirdParty/ILRuntime/Runtime/CLRBinding/MethodBindingGenerator.cs → Unity/Assets/ThirdParty/ILRuntime/ILRuntime/Runtime/CLRBinding/MethodBindingGenerator.cs

@@ -340,12 +340,6 @@ namespace ILRuntime.Runtime.CLRBinding
                                         sb.AppendLine(string.Format("({1}){0};", param[0].Name, realClsName));
                                     }
                                     break;
-                                case "Increment":
-                                    sb.AppendLine(string.Format("++{0};", param[0].Name));
-                                    break;
-                                case "Decrement":
-                                    sb.AppendLine(string.Format("--{0};", param[0].Name));
-                                    break;
                                 default:
                                     throw new NotImplementedException(i.Name);
                             }

+ 1 - 1
Unity/Assets/ThirdParty/ILRuntime/Runtime/CLRBinding/MethodBindingGenerator.cs.meta → Unity/Assets/ThirdParty/ILRuntime/ILRuntime/Runtime/CLRBinding/MethodBindingGenerator.cs.meta

@@ -1,5 +1,5 @@
 fileFormatVersion: 2
-guid: c2fb1f9ef71149e48ac775f8b6f378ab
+guid: fbce771673c7ec8419f4e15ddd0b263f
 MonoImporter:
   externalObjects: {}
   serializedVersion: 2

+ 0 - 0
Unity/Assets/ThirdParty/ILRuntime/Runtime/CLRBinding/ValueTypeBindingGenerator.cs → Unity/Assets/ThirdParty/ILRuntime/ILRuntime/Runtime/CLRBinding/ValueTypeBindingGenerator.cs


+ 1 - 1
Unity/Assets/ThirdParty/ILRuntime/Runtime/CLRBinding/ValueTypeBindingGenerator.cs.meta → Unity/Assets/ThirdParty/ILRuntime/ILRuntime/Runtime/CLRBinding/ValueTypeBindingGenerator.cs.meta

@@ -1,5 +1,5 @@
 fileFormatVersion: 2
-guid: a5e2317fc41f8a849b567c21a4187a5d
+guid: 08beda927dda9b14a9bfc7d2ac7f1fbd
 MonoImporter:
   externalObjects: {}
   serializedVersion: 2

+ 1 - 1
Unity/Assets/ThirdParty/ILRuntime/Runtime/Debugger.meta → Unity/Assets/ThirdParty/ILRuntime/ILRuntime/Runtime/Debugger.meta

@@ -1,5 +1,5 @@
 fileFormatVersion: 2
-guid: 6a2e529b037d5a44480ea5ed41775657
+guid: b6c303d2452657043a9a94384d477247
 folderAsset: yes
 DefaultImporter:
   externalObjects: {}

+ 0 - 0
Unity/Assets/ThirdParty/ILRuntime/Runtime/Debugger/BreakPointContext.cs → Unity/Assets/ThirdParty/ILRuntime/ILRuntime/Runtime/Debugger/BreakPointContext.cs


+ 1 - 1
Unity/Assets/ThirdParty/ILRuntime/Runtime/Debugger/BreakPointContext.cs.meta → Unity/Assets/ThirdParty/ILRuntime/ILRuntime/Runtime/Debugger/BreakPointContext.cs.meta

@@ -1,5 +1,5 @@
 fileFormatVersion: 2
-guid: 207ef3294a274654ab1b812b97c10631
+guid: bfa647fe296abe5478c0d39b0cf77c95
 MonoImporter:
   externalObjects: {}
   serializedVersion: 2

+ 0 - 0
Unity/Assets/ThirdParty/ILRuntime/Runtime/Debugger/BreakpointInfo.cs → Unity/Assets/ThirdParty/ILRuntime/ILRuntime/Runtime/Debugger/BreakpointInfo.cs


Algunos archivos no se mostraron porque demasiados archivos cambiaron en este cambio