稍微修改过的Mono.Cecil

本文介绍了一项针对Mono.Cecil的修改工作,以提高其与System.Reflection的兼容性。主要修改包括调整类型引用的全名格式、改进类型定义的类判断条件、新增类型可见性方法等。
给Jb Evain发了email不过还没得到回复。但是有个功能想用但Mono.Cecil没有,而且也有些与System.Reflection不兼容的地方。想想还是自己先做点修改来用用好了。

修改的说明:
[quote]Modified Mono.Cecil in a few places, based on Jb Evain's
Mono.Cecil in Mono SVN trunk on 2008-09-15.

1. modified Mono.Cecil.TypeReference.FullName
changed the concatenation character from '/' to '+',
in order to stay compatible with System.Reflection.

2. modified Mono.Cecil.TypeDefinition.IsClass
adds the !this.ValueType condition to stay compatible
with System.Reflection.

3. added Mono.Cecil.TypeDefinition.IsVisible
a convenience method to see whether a type is visible
outside the assembly, as what System.Reflection.Type.IsVisible does.

4. modified Mono.Cecil.Binary.ImageReader.Read(string)
a trivial modification, replaced:
if (!File.Exists (fi.FullName))
with:
if ( !fi.Exists )

5. all source code have been reformated due to my Visual
Studio's settings...

2008-09-21
RednaxelaFX[/quote]

下载在附件里。
unity APIUpdater encountered some issues and was not able to finish. Unhandled Exception: System.InvalidOperationException: Operation is not valid due to the current state of the object. at Mono.Cecil.ModuleDefinition.ReadSymbols (Mono.Cecil.Cil.ISymbolReader reader) [0x0002f] in <a3989f8c34e6476eaca56644d5639ee8>:0 at Mono.Cecil.ModuleReader.ReadSymbols (Mono.Cecil.ModuleDefinition module, Mono.Cecil.ReaderParameters parameters) [0x0004a] in <a3989f8c34e6476eaca56644d5639ee8>:0 at Mono.Cecil.ModuleReader.CreateModule (Mono.Cecil.PE.Image image, Mono.Cecil.ReaderParameters parameters) [0x00081] in <a3989f8c34e6476eaca56644d5639ee8>:0 at Mono.Cecil.ModuleDefinition.ReadModule (Mono.Disposable`1[T] stream, System.String fileName, Mono.Cecil.ReaderParameters parameters) [0x0000d] in <a3989f8c34e6476eaca56644d5639ee8>:0 at Mono.Cecil.ModuleDefinition.ReadModule (System.String fileName, Mono.Cecil.ReaderParameters parameters) [0x0006c] in <a3989f8c34e6476eaca56644d5639ee8>:0 at Mono.Cecil.AssemblyDefinition.ReadAssembly (System.String fileName, Mono.Cecil.ReaderParameters parameters) [0x00000] in <a3989f8c34e6476eaca56644d5639ee8>:0 at APIUpdater.Framework.Configuration.ObsoleteAttributeBasedConfigurationFactory..ctor (System.String pathToAssemblyWithAttr, System.Boolean reportSourceInformation, System.String[] potentiallyReferencedAssemblyPaths) [0x00079] in <658ad496184746efb4798c63cf56a4bf>:0 at APIUpdater.Framework.Util.IEnumerableExtensions.ComputeConfigurationProvider (System.Collections.Generic.IEnumerable`1[T] assemblyPaths, APIUpdater.Framework.Configuration.ConfigurationProvider provider, System.String[] references) [0x00032] in <658ad496184746efb4798c63cf56a4bf>:0 at ScriptUpdater.Program.ConfigurationProviderFor (APIUpdater.Framework.Configuration.CompilerResponseFile responseFile, System.Text.RegularExpressions.Regex configSourceFilter, APIUpdater.Framework.Log.ConsoleUpdateListener logger) [0x000c8]
最新发布
04-29
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值