Commit Graph

32 Commits (34df2799432d9dedd2c17d461c126a311fe12157)

Author SHA1 Message Date
walon d431aeb019 [new] 支持MonoPInvokeCallback函数的参数或返回类型为struct类型
[fix] 修复ReversePInvokeWrapper函数定义未包含调用约定的bug
[refactor] 合并ReversePInvokeMethodStub到MethodBridge,同时将MetadataModule中ReversePInvoke相关代码移到InterpreterModule
2024-05-30 13:08:21 +08:00
walon 4879bb7f44 [opt] LoadModule中设置 mod.EnableTypeDefFindCache = true,数倍提升了计算桥接函数的性能 2024-04-03 11:09:04 +08:00
walon 20a06f1ec5 [fix] 修复GenericArgumentContext不支持ElementType.FnPtr的bug 2024-02-29 20:37:57 +08:00
walon 276cd0a4a8 [change] AssemblyCacheBase新增TryLoadModule接口
[change] AssemblyCacheBase加载Module时先File.ReadAllBytes读取dll内容,避免Dispose问题
2024-01-23 20:24:12 +08:00
walon 3cea936aa4 [refactor] 重构 AssemblyCache和 AssemblyReferenceDeepCollector,消除冗余代码
[fix] 修复裁剪aot dll中出现netstandard时,生成桥接函数异常的bug
2023-11-23 13:48:06 +08:00
walon d9ed27abfb [new] Generate支持 netstandard 2023-11-01 20:33:42 +08:00
walon 69de3d733d [refactor] 调整HybridCLR.Editor模块一些不规范的命名空间 2023-10-09 15:39:32 +08:00
walon 1bd27a3e22 [fix] 修复生成桥接函数时,如果热更新程序集未包含任何代码直接引用了某个aot程序集,则没有为该aot程序集生成桥接函数,导致出现NotSupportNative2Managed异常的bug 2023-10-08 13:27:23 +08:00
walon beec0b73e6 [fix] 修复MetaUtil.ToShareTypeSig将Ptr和ByRef计算成IntPtr的bug,正确应该是UIntPtr 2023-09-23 21:19:45 +08:00
walon 5857696b56 [change] 日志和异常文本换成英文,方便海外开发者 2023-08-30 11:07:12 +08:00
walon 9eb6dda71b [refactor] 重构桥接函数,彻底解决跨平台问题 2023-08-24 12:58:09 +08:00
walon 679c21da43 [fix] 修复计算桥接函数未考虑到泛型类的成员函数中可能包含Native2Manager调用 2023-07-12 23:09:58 +08:00
walon c462aeb2ef [fix] 修复计算桥接函数时未考虑到补充元数据泛型实例化会导致访问到一些非公开的函数的情况,导致少生成一些必要的桥接函数 2023-06-07 11:47:17 +08:00
walon c083e4ada4 [opt] 优化Resolve Assembly失败时的错误信息 2023-04-23 12:20:56 +08:00
walon 15f2f0b83c [opt] 优化AssemblyResolver失败时的错误日志 2023-02-12 11:38:18 +08:00
walon 00f94335c3 [refactor] 重构并且修复了Generate相关Assembly Resolve潜在的bug。
[opt] 优化 PrebuildCommand.Build 中多次编译热更新dll的问题,大幅缩短了时间。
2022-12-14 14:11:32 +08:00
walon b40d62e16e [opt] 优化link.xml生成,只加载热更新dll,不再加载它们依赖的其他dll 2022-12-13 18:10:20 +08:00
walon c8acfef61d [fix] 修复 externalHotUpdateAssembliyDirs 无法正确工作的bug 2022-12-13 11:40:18 +08:00
walon abc70a7ffc [new] 支持自定义外部热更新dll的搜索路径 externalHotUpdateAssembliyDirs 2022-12-02 10:33:13 +08:00
walon 93f855f8ae [fix] 修复生成桥接函数时错误使用editor环境的dll,导致NativeArray之类的类型与打包的aot dll不一致,进而生成桥接签名错误的bug。目前直接从裁剪后的AOT dll目录读取,但缺点是需要先build一次生成AOT dll,再生成桥接函数。 2022-11-29 17:11:25 +08:00
walon b9ea9b21f3 [fix] 修复扫描Plugin assembly时未忽略~结尾的目录的bug 2022-11-18 19:38:21 +08:00
walon 9ea240ab82 重构 2022-10-17 12:16:18 +08:00
walon a74130618e [fix] 将两处正常日志的级别由错误改为警告 2022-10-14 22:32:15 +08:00
walon e3095ccc01 [fix] 修复桥接函数遍历收集签名时,未等遍历完就结束执行,导致生成的桥接文件不完整的bug 2022-10-14 14:47:27 +08:00
walon f2ee5e7af1 [fix] 修复 UnityPluginAssemblyResolver 搜索依赖dll未检查Plugins外目录的bug
[refactor] 一些重命名 hotfix -> hotUpdate
[refactor] HybridCLRGlobalSettings移除 hotUpdateDllOutputDir、 hybridCLRDataDir、strippedAssemblyDir这三个配置项,改为直接写死
[change] Editor下调用LoadMetadataForAOTAssembly返回成功而不是抛出错误
2022-10-08 12:35:57 +08:00
walon 62bf4c2847 [fix] 修复 UnityPluginAssemblyResolver 扫描dll时,失误扫描了非Plugins dll的bug 2022-09-27 16:12:34 +08:00
walon cd68f33161 [fix] 修复plugin dll与Unity自带dll同名时,GenerateMethodBridge生成失败的bug 2022-09-27 14:57:00 +08:00
walon 3440f79421 [fix] 修复ResolveClass某些情况下抛出NullReferenceException的bug 2022-09-26 12:49:23 +08:00
walon 5926b285e3 [fix] 生成完成后释放dnlib相关对象,避免出现dll文件被占用的异常 2022-09-26 12:12:57 +08:00
walon c76e68411f [new] AOTGenericReferences打印出详细的泛型类型及函数签名 2022-09-23 15:16:43 +08:00
walon a3f0befea4 [fix] 修复计算泛型 多维数组桥接函数时抛出异常的bug 2022-09-22 12:11:26 +08:00
walon a52ab358b3 [init] 初始化0.1.0版本 2022-09-22 08:56:07 +08:00