功能 :该命令扫描打开的CODESYS 项目的程序代码,查找复制的代码,并打开“克隆检测结果” 视图,显示检测到的克隆代码块。在此过程中,只有大于特定大小的代码块才会被视为克隆。非常小的代码块不会显示为克隆。
请致电 :
-
菜单栏:“构建 静态分析”
-
上下文菜单:“静态分析”
要求 :CODESYS 项目已经开放。
如果两个代码位置具有以下属性,则视为克隆:
-
结构组成相同
-
变量具有相同的数据类型。
-
变量名可能不同(组件访问除外)。不过,代码中多次出现的标识符必须在两个代码位置的相同位置出现。
-
字面量具有相同的数据类型。
-
字面意义可能不同。在代码中多次出现的字面意义必须在两个代码位置的相同位置出现。
|
显示搜索结果的选项卡
|
|
该选项卡以树形视图显示代码克隆,并提供命令和过滤选项。 重复数据集中第一个出现的重复数据被视为根节点。子节点的背景颜色表示代码是不同还是完全相同。相同的颜色意味着 "相同的代码"。树形视图的内容按重复代码的语句数降序排序。 |
|
|
“子节点/克隆” |
代码块中子节点(语句)的数量 如果子节点数少于 20 个,则不考虑代码克隆。 |
“对象过滤器” |
“Object” 的输入字段,克隆列表通过该字段进行筛选 |
“显示选定的克隆” |
要求:同一父节点的两个子节点被选中。 两个编程对象都显示在视图的上部,以便比较。在此过程中,重复的代码会高亮显示,而不同的代码(例如不同的变量名)会用不同的颜色高亮显示。 |
克隆代码列表 |
专栏
双击子节点可打开相应的编程对象,并在其中选中复制的代码块。 |