| Previous CloneSet | Next CloneSet | Back to Main Report |
| Clone Mass | Clones in CloneSet | Parameter Count | Clone Similarity | Syntax Category [Sequence Length] |
|---|---|---|---|---|
| 29 | 2 | 3 | 0.991 | statement_sequence[5] |
| Clone Abstraction | Parameter Bindings |
| Clone Instance (Click to see clone) | Line Count | Source Line | Source File |
|---|---|---|---|
| 1 | 29 | 46 | plugins/org.eclipse.jdt.core/compiler/org/eclipse/jdt/internal/compiler/ast/JavadocAllocationExpression.java |
| 2 | 29 | 56 | plugins/org.eclipse.jdt.core/compiler/org/eclipse/jdt/internal/compiler/ast/JavadocMessageSend.java |
| ||||
if (this.arguments != null) {
boolean argHasError = false;
int length = this.arguments.length;
argumentTypes = new TypeBinding[length];
for (int i = 0; i < length; i++) {
Expression argument = this.arguments[i];
if (scope.kind == Scope.CLASS_SCOPE) {
argumentTypes[i] = argument.resolveType((ClassScope) scope);
}
else {
argumentTypes[i] = argument.resolveType((BlockScope) scope);
}
if (argumentTypes[i] == null) {
argHasError = true;
}
else if ( !hasTypeVarArgs) {
hasTypeVarArgs = argumentTypes[i].isTypeVariable();
}
}
if (argHasError) {
return null;
}
}
// check resolved type
if (this.resolvedType == null) {
return null;
}
this.resolvedType = scope.environment().convertToRawType(this.type.resolvedType);
SourceTypeBinding enclosingType = scope.enclosingSourceType();
this.superAccess = enclosingType == null ? false: enclosingType.isCompatibleWith(this.resolvedType);
|
| ||||
if (this.arguments != null) {
boolean argHasError = false; // typeChecks all arguments
int length = this.arguments.length;
argumentTypes = new TypeBinding[length];
for (int i = 0; i < length; i++) {
Expression argument = this.arguments[i];
if (scope.kind == Scope.CLASS_SCOPE) {
argumentTypes[i] = argument.resolveType((ClassScope) scope);
}
else {
argumentTypes[i] = argument.resolveType((BlockScope) scope);
}
if (argumentTypes[i] == null) {
argHasError = true;
}
else if ( !hasArgsTypeVar) {
hasArgsTypeVar = argumentTypes[i].isTypeVariable();
}
}
if (argHasError) {
return null;
}
}
// check receiver type
if (this.actualReceiverType == null) {
return null;
}
this.actualReceiverType = scope.environment().convertToRawType(this.receiver.resolvedType);
SourceTypeBinding enclosingType = scope.enclosingSourceType();
this.superAccess = enclosingType == null ? false: enclosingType.isCompatibleWith(this.actualReceiverType);
|
| |||
if (this.arguments != null) {
boolean argHasError = false; // typeChecks all arguments
int length = this.arguments.length;
argumentTypes = new TypeBinding[length];
for (int i = 0; i < length; i++) {
Expression argument = this.arguments[i];
if (scope.kind == Scope.CLASS_SCOPE) {
argumentTypes[i] = argument.resolveType((ClassScope) scope);
}
else {
argumentTypes[i] = argument.resolveType((BlockScope) scope);
}
if (argumentTypes[i] == null) {
argHasError = true;
}
else
if ( ! [[#variableb70ba960]]) {
[[#variableb70ba960]]= argumentTypes[i].isTypeVariable();
}
}
if (argHasError) {
return null;
}
}
// check receiver type
// check resolved type
if (this. [[#variableb70ba560]]== null) {
return null;
}
this. [[#variableb70ba560]]= scope.environment().convertToRawType(this. [[#variableb70ba540]].resolvedType);
SourceTypeBinding enclosingType = scope.enclosingSourceType();
this.superAccess = enclosingType == null ? false: enclosingType.isCompatibleWith(this. [[#variableb70ba560]]);
|
| CloneAbstraction |
| Parameter Index | Clone Instance | Parameter Name | Value |
|---|---|---|---|
| 1 | 1 | [[#b70ba960]] | hasArgsTypeVar |
| 1 | 2 | [[#b70ba960]] | hasTypeVarArgs |
| 2 | 1 | [[#b70ba560]] | actualReceiverType |
| 2 | 2 | [[#b70ba560]] | resolvedType |
| 3 | 1 | [[#b70ba540]] | receiver |
| 3 | 2 | [[#b70ba540]] | type |