我想找到所有没有大括号' '的if陈述和for陈述{.当你在一个if语句中写一行时,你不会将它大部分用大括号括起来,所以我想找到所有这些if和for语句.
请帮忙!
就像我想捕获这个声明一样
if (childNode.Name == "B")
return TokenType.Bold;
Run Code Online (Sandbox Code Playgroud)
但不是这些
if (childNode.Name == "B")
{
return TokenType.Bold;
}
Run Code Online (Sandbox Code Playgroud)
我想用正则表达式来做.
需要一个简单的代码分析器来查看我是否忘记释放对象和类,或者查看我是否多次释放它们.
Safari 5获得了一项新功能:阅读器.它显示了文章页面的简化版本,只包含文章本身(而不是所有杂乱的文章).它还将多个页面(如果文章分为多个页面)合并为一个页面.
这是一个非常有用的功能,我想将其移植到Chrome.
我在WebKit主干中搜索Readers代码(例如http://svn.webkit.org/repository/webkit/trunk/),但我找不到它.
有什么提示我可以找到它吗?
我想在Perl中检查和操作任意Perl程序的代码(由coderefs获取).有没有工具/模块/库?类似于B :: Concise的东西,除了B :: Concise在输出上打印代码,但我想以编程方式检查它.
我想像这样使用它.给定一个coderef F,例如.有10个参数:
$ret = &$F(x1, x2, x3, x4, x5, x6, x7, x8, x9, x10);
Run Code Online (Sandbox Code Playgroud)
我想创建一个函数F1,st.
&$F(x1, x2, x3, x4, x5, x6, x7, x8, x9, x10) ==
&$F1(x1, x2, x3, x4, x5, x6, x7, x8, x9, x10)*
&$C(x2, x3, x4, x5, x6, x7, x8, x9, x10)
Run Code Online (Sandbox Code Playgroud)
那就是把它"分解"成两部分,第二部分不依赖于x1第一部分,第一部分尽可能简单(我假设它F是一个巨大的产品).
我想要的应用是Metropolis采样算法的优化 - 假设我正在对分布进行采样p(x1 | x2 = X1, x3 = X3, ...) = f(x1, x2, x3, ...).算法本身是不变的.乘法常数因子和其他变量不会通过算法改变,因此不依赖于x1 …
perl code-analysis abstract-syntax-tree bytecode-manipulation
protected override void OnTextInput(TextCompositionEventArgs e)
{
e.Handled = true;
DoSomething(e.Text);
}
Run Code Online (Sandbox Code Playgroud)
如果我检查null,CA很高兴,但ReSharper说null检查将始终为false.我不确定谁更值得信赖......这似乎是ReSharper中的一个错误,因为从理论上讲,有人可以从我的类中扩展并调用此方法直接传入null.但我想我只是想仔细检查哪个工具是正确的,哪个工具有错误.
我需要对Java EE Web应用程序进行性能分析并优化代码.请建议如何做到这一点?首先,我正在检查服务器日志.
我刚刚在我的c#winforms项目上运行了代码分析.我收到警告
CA1009 Declare event handlers correctly
Declare the second parameter of 'NameEditEx.TextChanged' as an EventArgs,
or an instance of a type that extends EventArgs, named 'e'.
Run Code Online (Sandbox Code Playgroud)
有问题的类位于包含以下内容的用户控件中;
public delegate void TextChanged();
[Browsable(true)]
public event TextChanged OnTextChanged;
Run Code Online (Sandbox Code Playgroud)
对其具有控件的表单在InitializeComponent中具有以下代码
this.nameEditEx1.OnTextChanged += new NameEditExLib.NameEditEx.TextChanged(this.nameEditEx1_OnTextChanged);
Run Code Online (Sandbox Code Playgroud)
方法是
private void nameEditEx1_OnTextChanged()
{
try
{
UpdateName();
}
catch (Exception ex)
{
HandleException.Show(ex);
}
}
Run Code Online (Sandbox Code Playgroud)
运行时,代码似乎工作正常.我应该改变代码以摆脱警告吗?如果是这样,我该怎么做?
更新 微软链接
我正在使用VS Professional 2012.我对解决方案进行了代码分析.我修复了一些警告信息并压制了其中一些.现在我想要这份代码分析报告的报告.报告应该说没有警告消息和被禁止的警告消息列表.
怎么得到这样的报道?这有什么办法吗?或者我需要使用任何外部工具?我请你建议我.
我已经修复了警告并且已经压制了其中一些警告.所有被抑制的警告都在文件'GlobalSuppressions.cs'中.因此,当我运行代码分析时,我没有得到任何警告,因此我无法进行复制粘贴.我收到了警告信息
'GlobalSuppression.cs' as "[assembly: System.Diagnostics.CodeAnalysis.SuppressMessage("Microsoft.Globalization", "CA1303:Do not pass literals as localized parameters", MessageId = "System.Diagnostics.EventLog.WriteEntry(System.String,System.Diagnostics.EventLogEntryType)", Scope = "member", Target = "NonRailEngine.WindowsService.NonRailEngineService.#OnStart(System.String[])")]"
Run Code Online (Sandbox Code Playgroud)
我在查看运行代码分析后是否可以使用报告格式
是否有一些内置在函数/扩展/工具中的方法来查找VS2013中C#解决方案(ASP.NET WebForms)n中的所有异常隐藏/异常吞咽.
谢谢
编辑:
我有一个解决方案,其中一些程序员使用hide/swallow异常(空catch,只捕获一些无用的代码).我正在寻找一些方法来在代码中找到所有这些地方,分析它们,然后修复它们.
c# code-analysis exception visual-studio static-code-analysis
我目前正在努力提高多个开发人员的C++项目(在Linux下)的质量.我们项目的几乎所有功能都返回一定的ErrorCode.我想强制执行从函数返回的错误代码的处理(避免忘记),因此我正在寻找一个开源工具/ bash脚本,它解析我的代码并确定是否在没有赋值的情况下使用函数并发出警告如果是这样.例如
setMyVar(uint32_t bla); // Naughty
Run Code Online (Sandbox Code Playgroud)
代替
ErrorCode currentError = setMyVar(uint32_t bla); // Potentially naughty but I am ok with that
Run Code Online (Sandbox Code Playgroud)
还必须是该过程适用于名称空间的使用,例如
ErrorCode currentError = PM::initialize();
Run Code Online (Sandbox Code Playgroud)
理想情况下
if( PM::initialize() == PM::Init_Error)
Run Code Online (Sandbox Code Playgroud)
也被认为是正确的用法.有什么建议如何解决这类问题,而无需实现复杂的代码解析器?
编辑:我也想避免修改我的源代码或我希望有一个只读脚本来识别问题.
code-analysis ×10
c# ×4
.net ×1
bash ×1
c++ ×1
ca1062 ×1
delphi ×1
exception ×1
java ×1
memory-leaks ×1
null-check ×1
parsing ×1
performance ×1
perl ×1
regex ×1
resharper ×1
safari ×1
webkit ×1
winforms ×1