Skip to content

配置项

ihourglass edited this page Dec 16, 2024 · 4 revisions

配置项

在引用Rougamo之后编译时会在项目根目录生成一个FodyWeavers.xml文件,格式如下:

<Weavers xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:noNamespaceSchemaLocation="FodyWeavers.xsd">
  <Rougamo />
</Weavers>

添加配置的方式就是直接在Rougamo节点添加属性和值,比如<Rougamo enabled="false" />

名称 默认值 说明
enabled true 是否开启rougamo
composite-accessibility false 是否使用类+方法综合可访问性进行匹配,默认仅按方法可访问性进行匹配。比如类的可访问性为 internal,方法的可访问性为 public,那么默认情况下该方法的可访问性认定为 public,将该配置设置为 true 后,该方法的可访问性认定为 internal
iterator-returns false 是否保存 iterator 的返回值到MethodContext.ReturnValue,谨慎使用该功能,如果迭代器产生大量数据,启用该功能将占用等量内存
reverse-call-nonentry true 当一个方法上有多个MoAttribute时,是否在执行OnException/OnSuccess/OnExit时按照OnEntry的倒序执行,默认倒序执行
except-type-patterns 类型全名称的正则表达式,符合该表达式的类型将被全局排除,多个正则表达式之间用英文逗号或者分号分隔
pure-stacktrace true 由于 Rougamo 采用代理织入的编织方式,所以会产生一些冗余的调用堆栈信息,5.0 版本后默认会排除这种冗余调用堆栈,如果有特殊需求,可以通过将该配置设置为false继续使用冗余的调用堆栈信息,详见 Release 5.0.0

除了上表中的属性配置,Rougamo 还有子节点配置,用于通过配置进行方法匹配织入,详见 配置化应用方式