if (value != null && !eStructuralFeature.getEType().isInstance(value))
{
String valueClass = value instanceof EObject ? ((EObject)value).eClass().getName() : value.getClass().getName();
throw
new ClassCastException
("The feature '" + eStructuralFeature.getName() + "'s type '" +
eStructuralFeature.getEType().getName() + "' does not permit a value of type '" + valueClass + "'");
}
if (value != null && !eStructuralFeature.getEType().isInstance(value))
{
String valueClass = value instanceof EObject ? ((EObject)value).eClass().getName() : value.getClass().getName();
throw
new ClassCastException
("The feature '" + eStructuralFeature.getName() + "'s type '" +
eStructuralFeature.getEType().getName() + "' does not permit a value of type '" + valueClass + "'");
}
Clone fragments detected by clone detection tool
File path: /emf-2.4.1/src/org/eclipse/emf/ecore/impl/EStructuralFeatureImpl.java
|
|
File path: /emf-2.4.1/src/org/eclipse/emf/ecore/util/FeatureMapUtil.java
|
Method name: void validate(Object)
|
|
Method name: void validate()
|
Number of AST nodes: 3
|
|
Number of AST nodes: 3
|
|
1 | if (value != null && !eStructuralFeature.getEType().isInstance(value))↵ | | 1 | if (value != null && !eStructuralFeature.getEType().isInstance(value))↵
|
2 | {↵ | | 2 | {↵
|
3 | String valueClass = value instanceof EObject ? ((EObject)value).eClass().getName() : value.getClass().getName();↵ | | 3 | String valueClass = value instanceof EObject ? ((EObject)value).eClass().getName() : value.getClass().getName();↵
|
4 | throw ↵ | | 4 | throw ↵
|
5 | new ClassCastException↵ | | 5 | new ClassCastException↵
|
6 | ("The feature '" + eStructuralFeature.getName() + "'s type '" + ↵ | | 6 | ("The feature '" + eStructuralFeature.getName() + "'s type '" + ↵
|
7 | eStructuralFeature.getEType().getName() + "' does not permit a value of type '" + valueClass + "'");↵ | | 7 | eStructuralFeature.getEType().getName() + "' does not permit a value of type '" + valueClass + "'");↵
|
8 | } | | 8 | }
|
See real code fragment |
|
See real code fragment |
Summary
Number of common nesting structure subtrees | 1 |
Number of refactorable cases | 0 |
Number of non-refactorable cases | 1 |
Time elapsed for finding largest common nesting structure subtrees (ms) | 0.3 |
Clones location | Clones are in different classes |
Number of node comparisons | 9 |
-
{Non-refactorable}
Mapping Summary
Number of mapped statements | 3 |
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) | 1.0 |
Clone type | Type 2 |
Mapped Statements
ID |
Statement |
|
ID |
Statement |
1 | if (value != null && !eStructuralFeature.getEType().isInstance(value)) | | 1 | if (value != null && !eStructuralFeature.getEType().isInstance(value)) |
2 | String valueClass = value instanceof EObject ? ((EObject)value).eClass().getName() : value.getClass().getName(); | | 2 | String valueClass = value instanceof EObject ? ((EObject)value).eClass().getName() : value.getClass().getName(); |
3 | throw new ClassCastException("The feature '" + eStructuralFeature.getName() + "'s type '" + eStructuralFeature.getEType().getName() + "' does not permit a value of type '" + valueClass + "'"); | | 3 | throw new ClassCastException("The feature '" + eStructuralFeature.getName() + "'s type '" + eStructuralFeature.getEType().getName() + "' does not permit a value of type '" + valueClass + "'"); |
Precondition Violations (3)
Row |
Violation |
1 | Type org.eclipse.emf.ecore.EStructuralFeature.Internal of variable eStructuralFeature does not match with type org.eclipse.emf.ecore.EStructuralFeature of variable eStructuralFeature |
2 | Type org.eclipse.emf.ecore.EStructuralFeature.Internal of variable eStructuralFeature does not match with type org.eclipse.emf.ecore.EStructuralFeature of variable eStructuralFeature |
3 | Type org.eclipse.emf.ecore.EStructuralFeature.Internal of variable eStructuralFeature does not match with type org.eclipse.emf.ecore.EStructuralFeature of variable eStructuralFeature |