StringBuffer retval = new StringBuffer();
char ch;
for (int i = 0; i < str.length(); i++) {
switch (str.charAt(i))
{
case 0 :
continue;
case '\b':
retval.append("\\b");
continue;
case '\t':
retval.append("\\t");
continue;
case '\n':
retval.append("\\n");
continue;
case '\f':
retval.append("\\f");
continue;
case '\r':
retval.append("\\r");
continue;
case '\"':
retval.append("\\\"");
continue;
case '\'':
retval.append("\\\'");
continue;
case '\\':
retval.append("\\\\");
continue;
default:
if ((ch = str.charAt(i)) < 0x20 || ch > 0x7e) {
String s = "0000" + Integer.toString(ch, 16);
retval.append("\\u" + s.substring(s.length() - 4, s.length()));
} else {
retval.append(ch);
}
continue;
}
}
return retval.toString();
StringBuffer retval = new StringBuffer();
char ch;
for (int i = 0; i < str.length(); i++) {
switch (str.charAt(i))
{
case 0 :
continue;
case '\b':
retval.append("\\b");
continue;
case '\t':
retval.append("\\t");
continue;
case '\n':
retval.append("\\n");
continue;
case '\f':
retval.append("\\f");
continue;
case '\r':
retval.append("\\r");
continue;
case '\"':
retval.append("\\\"");
continue;
case '\'':
retval.append("\\\'");
continue;
case '\\':
retval.append("\\\\");
continue;
default:
if ((ch = str.charAt(i)) < 0x20 || ch > 0x7e) {
String s = "0000" + Integer.toString(ch, 16);
retval.append("\\u" + s.substring(s.length() - 4, s.length()));
} else {
retval.append(ch);
}
continue;
}
}
return retval.toString();
Clone fragments detected by clone detection tool
File path: /jEdit-4.2/src/bsh/TokenMgrError.java
|
|
File path: /jEdit-4.2/src/bsh/ParseException.java
|
Method name: String addEscapes(String)
|
|
Method name: String add_escapes(String)
|
Number of AST nodes: 37
|
|
Number of AST nodes: 37
|
|
1 | StringBuffer retval = new StringBuffer();↵ | | 1 | StringBuffer retval = new StringBuffer();↵
|
2 | char ch;↵ | | 2 | char ch;↵
|
3 | for (int i = 0; i < str.length(); i++) {↵ | | 3 | for (int i = 0; i < str.length(); i++) {↵
|
4 | switch (str.charAt(i))↵ | | 4 | switch (str.charAt(i))↵
|
5 | {↵ | | 5 | {↵
|
6 | case 0 :↵ | | 6 | case 0 :↵
|
7 | continue;↵ | | 7 | continue;↵
|
8 | case '\b':↵ | | 8 | case '\b':↵
|
9 | retval.append("\\b");↵ | | 9 | retval.append("\\b");↵
|
10 | continue;↵ | | 10 | continue;↵
|
11 | case '\t':↵ | | 11 | case '\t':↵
|
12 | retval.append("\\t");↵ | | 12 | retval.append("\\t");↵
|
13 | continue;↵ | | 13 | continue;↵
|
14 | case '\n':↵ | | 14 | case '\n':↵
|
15 | retval.append("\\n");↵ | | 15 | retval.append("\\n");↵
|
16 | continue;↵ | | 16 | continue;↵
|
17 | case '\f':↵ | | 17 | case '\f':↵
|
18 | retval.append("\\f");↵ | | 18 | retval.append("\\f");↵
|
19 | continue;↵ | | 19 | continue;↵
|
20 | case '\r':↵ | | 20 | case '\r':↵
|
21 | retval.append("\\r");↵ | | 21 | retval.append("\\r");↵
|
22 | continue;↵ | | 22 | continue;↵
|
23 | case '\"':↵ | | 23 | case '\"':↵
|
24 | retval.append("\\\"");↵ | | 24 | retval.append("\\\"");↵
|
25 | continue;↵ | | 25 | continue;↵
|
26 | case '\'':↵ | | 26 | case '\'':↵
|
27 | retval.append("\\\'");↵ | | 27 | retval.append("\\\'");↵
|
28 | continue;↵ | | 28 | continue;↵
|
29 | case '\\':↵ | | 29 | case '\\':↵
|
30 | retval.append("\\\\");↵ | | 30 | retval.append("\\\\");↵
|
31 | continue;↵ | | 31 | continue;↵
|
32 | default:↵ | | 32 | default:↵
|
33 | if ((ch = str.charAt(i)) < 0x20 || ch > 0x7e) {↵ | | 33 | if ((ch = str.charAt(i)) < 0x20 || ch > 0x7e) {↵
|
34 | String s = "0000" + Integer.toString(ch, 16);↵ | | 34 | String s = "0000" + Integer.toString(ch, 16);↵
|
35 | retval.append("\\u" + s.substring(s.length() - 4, s.length()));↵ | | 35 | retval.append("\\u" + s.substring(s.length() - 4, s.length()));↵
|
36 | } else {↵ | | 36 | } else {↵
|
37 | retval.append(ch);↵ | | 37 | retval.append(ch);↵
|
38 | }↵ | | 38 | }↵
|
39 | continue;↵ | | 39 | continue;↵
|
40 | }↵ | | 40 | }↵
|
41 | }↵ | | 41 | }↵
|
42 | return retval.toString(); | | 42 | return retval.toString();
|
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.9 |
Clones location | Clones are in different classes having the same super class |
Number of node comparisons | 455 |
-
{Refactorable}
Mapping Summary
Number of mapped statements | 37 |
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) | 45.3 |
Clone type | Type 1 |
Mapped Statements
ID |
Statement |
|
ID |
Statement |
1 | StringBuffer retval = new StringBuffer(); | | 1 | StringBuffer retval = new StringBuffer(); |
2 | char ch; | | 2 | char ch; |
3 | for (int i = 0; i < str.length(); i++) | | 3 | for (int i = 0; i < str.length(); i++) |
4 | | | 4 | |
5 | | | 5 | |
6 | | | 6 | |
7 | | | 7 | |
8 | | | 8 | |
9 | | | 9 | |
10 | | | 10 | |
11 | | | 11 | |
12 | | | 12 | |
13 | | | 13 | |
14 | | | 14 | |
15 | | | 15 | |
16 | | | 16 | |
17 | | | 17 | |
18 | | | 18 | |
19 | | | 19 | |
20 | | | 20 | |
21 | | | 21 | |
22 | | | 22 | |
23 | | | 23 | |
24 | | | 24 | |
25 | | | 25 | |
26 | | | 26 | |
27 | | | 27 | |
28 | | | 28 | |
29 | | | 29 | |
30 | | | 30 | |
31 | | | 31 | |
32 | if ((ch = str.charAt(i)) < 0x20 || ch > 0x7e) | | 32 | if ((ch = str.charAt(i)) < 0x20 || ch > 0x7e) |
33 | String s = "0000" + Integer.toString(ch, 16); | | 33 | String s = "0000" + Integer.toString(ch, 16); |
34 | retval.append("\\u" + s.substring(s.length() - 4, s.length())); | | 34 | retval.append("\\u" + s.substring(s.length() - 4, s.length())); |
| | | | |
35 | | | 35 | |
36 | | | 36 | |
37 | return retval.toString(); | | 37 | return retval.toString(); |
Precondition Violations (0)
Row |
Violation |