【问题标题】:Prevent null forgiving operator usage防止 null 宽恕运算符的使用
【发布时间】:2022-01-21 04:22:40
【问题描述】:

作为我们维护项目工作的一部分,我们通常最终会在 PR 评论中讨论 null 宽恕运算符 !,并一直在尝试探索完全阻止使用它的方法。

理想情况下,我试图找到一种方法来防止通过.editorconfig 使用它并强制它成为一个错误,但是我一直在努力寻找任何明确的选择。这可能吗?

如果没有,是否有任何已知的其他方式来执行这种期望的行为?

【问题讨论】:

  • 您的源代码管理是否可以配置为拒绝使用 ! 提交源代码的尝试?词尾?
  • 您可以编写一个分析器,将其检测为语法节点并让它产生错误。将分析器引用为 NuGet 包(如果需要,可以使用私有源)或将其安装为扩展并要求所有开发人员都安装它。该包的好处是不需要开发人员配置,但缺点是必须记住在您创建的每个项目中引用它。

标签: c# nullable static-analysis editorconfig


【解决方案1】:

我已经开始按照 cmets 中的建议编写自己的 Roslyn 分析器,直到一位朋友向我指出这个已经提供它的存储库:

https://github.com/tom-englert/Nullable.Extended

有一个扩展或 NuGet 包选项看起来完全符合我们的需要。

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 2017-11-08
    • 1970-01-01
    • 1970-01-01
    • 2012-12-13
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多