File path: /emf-2.4.1/src/org/eclipse/emf/ecore/change/impl/ChangeDescriptionImpl.java | File path: /emf-2.4.1/src/org/eclipse/emf/ecore/change/impl/ChangeDescriptionImpl.java | |||
Method name: void applyAndReverse()
|
Method name: void applyAndReverse()
|
|||
Number of AST nodes: 14 | Number of AST nodes: 14 | |||
1 | switch (featureKind)↵ | 1 | switch (featureKind)↵ | |
2 | {↵ | 2 | {↵ | |
3 | case 1:↵ | 3 | case 1:↵ | |
4 | {↵ | 4 | {↵ | |
5 | @SuppressWarnings("unchecked") List<EObject> beforeValue = (List<EObject>)objectToChange.eGet(feature);↵ | 5 | @SuppressWarnings("unchecked") List<EObject> afterValue = (List<EObject>)objectToChange.eGet(feature);↵ | |
6 | objectsBeforeApply.addAll(beforeValue);↵ | 6 | objectsAfterApply.addAll(afterValue);↵ | |
7 | break;↵ | 7 | break;↵ | |
8 | }↵ | 8 | }↵ | |
9 | case 2:↵ | 9 | case 2:↵ | |
10 | {↵ | 10 | {↵ | |
11 | Object value = objectToChange.eGet(feature);↵ | 11 | Object value = objectToChange.eGet(feature);↵ | |
12 | if (value != null)↵ | 12 | if (value != null)↵ | |
13 | {↵ | 13 | {↵ | |
14 | objectsBeforeApply.add((EObject)objectToChange.eGet(feature));↵ | 14 | objectsAfterApply.add((EObject)objectToChange.eGet(feature));↵ | |
15 | }↵ | 15 | }↵ | |
16 | break;↵ | 16 | break;↵ | |
17 | } ↵ | 17 | } ↵ | |
18 | case 3:↵ | 18 | case 3:↵ | |
19 | {↵ | 19 | {↵ | |
20 | @SuppressWarnings("unchecked") List<FeatureMap.Entry> beforeValue = (List<FeatureMap.Entry>)objectToChange.eGet(feature);↵ | 20 | @SuppressWarnings("unchecked") List<FeatureMap.Entry> afterValue = (List<FeatureMap.Entry>)objectToChange.eGet(feature);↵ | |
21 | objectsBeforeApply.addAll(getContainedEObjects(beforeValue));↵ | 21 | objectsAfterApply.addAll(getContainedEObjects(afterValue));↵ | |
22 | break;↵ | 22 | break;↵ | |
23 | }↵ | 23 | }↵ | |
24 | } | 24 |
| |
See real code fragment | See real code fragment |
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.2 |
Clones location | Clones are in the same method |
Number of node comparisons | 90 |
Number of mapped statements | 14 |
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) | 7.0 |
Clone type | Type 2 |
ID | Statement | ID | Statement | ||||||||||||||
---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
9 | switch (featureKind) | 24 | switch (featureKind) | ||||||||||||||
10 | case 1: | 25 | case 1: | ||||||||||||||
11 | @SuppressWarnings("unchecked") List<EObject> beforeValue = (List<EObject>)objectToChange.eGet(feature); |
| 26 | @SuppressWarnings("unchecked") List<EObject> afterValue = (List<EObject>)objectToChange.eGet(feature); | |||||||||||||
12 | objectsBeforeApply.addAll(beforeValue); |
| 27 | objectsAfterApply.addAll(afterValue); | |||||||||||||
13 | break; | 28 | break; | ||||||||||||||
14 | case 2: | 29 | case 2: | ||||||||||||||
15 | Object value = objectToChange.eGet(feature); | 30 | Object value = objectToChange.eGet(feature); | ||||||||||||||
16 | if (value != null) | 31 | if (value != null) | ||||||||||||||
17 | objectsBeforeApply.add((EObject)objectToChange.eGet(feature)); |
| 32 | objectsAfterApply.add((EObject)objectToChange.eGet(feature)); | |||||||||||||
18 | break; | 33 | break; | ||||||||||||||
19 | case 3: | 34 | case 3: | ||||||||||||||
20 | @SuppressWarnings("unchecked") List<FeatureMap.Entry> beforeValue = (List<FeatureMap.Entry>)objectToChange.eGet(feature); |
| 35 | @SuppressWarnings("unchecked") List<FeatureMap.Entry> afterValue = (List<FeatureMap.Entry>)objectToChange.eGet(feature); | |||||||||||||
21 | objectsBeforeApply.addAll(getContainedEObjects(beforeValue)); |
| 36 | objectsAfterApply.addAll(getContainedEObjects(afterValue)); | |||||||||||||
22 | break; | 37 | break; |
Row | Violation |
---|