case '\\':
if(i == replace.length() - 1)
{
buf.append('\\');
break;
}
ch = replace.charAt(++i);
switch(ch)
{
case 'n':
buf.append('\n');
break;
case 't':
buf.append('\t');
break;
default:
buf.append(ch);
break;
}
break;
default:
buf.append(ch);
case '\\':
if(i == str.length() - 1)
{
buf.append('\\');
break;
}
c = str.charAt(++i);
switch(c)
{
case 'n':
buf.append('\n');
break;
case 't':
buf.append('\t');
break;
default:
buf.append(c);
break;
}
break;
default:
buf.append(c);
Clone fragments detected by clone detection tool
File path: /jEdit-4.2/src/org/gjt/sp/jedit/search/SearchAndReplace.java
|
|
File path: /jEdit-4.2/src/org/gjt/sp/jedit/MiscUtilities.java
|
Method name: String regexpReplace(SearchMatcher.Match, String)
|
|
Method name: String escapesToChars(String)
|
Number of AST nodes: 18
|
|
Number of AST nodes: 18
|
|
1 | case '\\':↵ | | 1 | case '\\':↵
|
2 | if(i == replace.length() - 1)↵ | | 2 | if(i == str.length() - 1)↵
|
3 | {↵ | | 3 | {↵
|
4 | buf.append('\\');↵ | | 4 | buf.append('\\');↵
|
5 | break;↵ | | 5 | break;↵
|
6 | }↵ | | 6 | }↵
|
7 | ch = replace.charAt(++i);↵ | | 7 | c = str.charAt(++i);↵
|
8 | switch(ch)↵ | | 8 | switch(c)↵
|
9 | {↵ | | 9 | {↵
|
10 | case 'n':↵ | | 10 | case 'n':↵
|
11 | buf.append('\n');↵ | | 11 | buf.append('\n');↵
|
12 | break;↵ | | 12 | break;↵
|
13 | case 't':↵ | | 13 | case 't':↵
|
14 | buf.append('\t');↵ | | 14 | buf.append('\t');↵
|
15 | break;↵ | | 15 | break;↵
|
16 | default:↵ | | 16 | default:↵
|
17 | buf.append(ch);↵ | | 17 | buf.append(c);↵
|
18 | break;↵ | | 18 | break;↵
|
19 | }↵ | | 19 | }↵
|
20 | break;↵ | | 20 | break;↵
|
21 | default:↵ | | 21 | default:↵
|
22 | buf.append(ch); | | 22 | buf.append(c);
|
See real code fragment |
|
See real code fragment |
Summary
Number of common nesting structure subtrees | 1 |
Number of refactorable cases | 1 |
Number of non-refactorable cases | 0 |
Time elapsed for finding largest common nesting structure subtrees (ms) | 0.3 |
Clones location | Clones are in different classes |
Number of node comparisons | 116 |
-
{Refactorable}
Mapping Summary
Number of mapped statements | 18 |
Number of unmapped statements in the first code fragment | 0 |
Number of unmapped statements in the second code fragment | 0 |
Time elapsed for statement mapping (ms) | 5.3 |
Clone type | Type 2 |
Mapped Statements
ID |
Statement |
|
ID |
Statement |
19 | case '\\': | | 5 | case '\\': |
20 | if (i == replace.length() - 1) | | 6 | if (i == str.length() - 1) |
21 | | | 7 | |
22 | | | 8 | |
23 | ch = replace.charAt(++i); | | 9 | c = str.charAt(++i); |
24 | switch (ch) | | 10 | switch (c) |
25 | | | 11 | |
26 | | | 12 | |
27 | | | 13 | |
28 | | | 14 | |
29 | | | 15 | |
30 | | | 16 | |
31 | | | 17 | |
32 | | | 18 | |
33 | | | 19 | |
34 | break; | | 20 | break; |
35 | default: | | 21 | default: |
36 | buf.append(ch); | | 22 | buf.append(c); |
Precondition Violations (0)
Row |
Violation |