internal IL2CPP_Field(IntPtr ptr) : base(ptr) { Ptr = ptr; Name = Marshal.PtrToStringAnsi(IL2CPP.il2cpp_field_get_name(Ptr)); Flags = (IL2CPP_BindingFlags)IL2CPP.il2cpp_field_get_flags(Ptr); ReturnType = new IL2CPP_Type(IL2CPP.il2cpp_field_get_type(Ptr)); }
internal IL2CPP_Method(IntPtr ptr) : base(ptr) { Ptr = ptr; Name = Marshal.PtrToStringAnsi(IL2CPP.il2cpp_method_get_name(Ptr)); ReturnType = new IL2CPP_Type(IL2CPP.il2cpp_method_get_return_type(Ptr)); uint flags = 0; Flags = (IL2CPP_BindingFlags)IL2CPP.il2cpp_method_get_flags(Ptr, ref flags); uint param_count = IL2CPP.il2cpp_method_get_param_count(Ptr); Parameters = new IL2CPP_Method_Parameter[param_count]; for (uint i = 0; i < param_count; i++) { Parameters[i] = new IL2CPP_Method_Parameter(IL2CPP.il2cpp_method_get_param(Ptr, i), Marshal.PtrToStringAnsi(IL2CPP.il2cpp_method_get_param_name(Ptr, i))); } }
internal IL2CPP_Object(IntPtr ptr, IL2CPP_Type returntype) : base(ptr) { Ptr = ptr; ReturnType = returntype; }