CloneSet348


Previous CloneSetNext CloneSetBack to Main Report
Clone
Mass
Clones in
CloneSet
Parameter
Count
Clone
Similarity
Syntax Category
[Sequence Length]
38210.999statement_sequence[8]
Clone AbstractionParameter Bindings
Clone Instance
(Click to see clone)
Line CountSource Line
Source File
1381767
plugins/org.eclipse.jdt.core/compiler/org/eclipse/jdt/internal/compiler/codegen/CodeStream.java
2381821
plugins/org.eclipse.jdt.core/compiler/org/eclipse/jdt/internal/compiler/codegen/CodeStream.java
Clone Instance
1
Line Count
38
Source Line
1767
Source File
plugins/org.eclipse.jdt.core/compiler/org/eclipse/jdt/internal/compiler/codegen/CodeStream.java

        int paramLength = methodBinding.parameters.length;
        this.generateInlinedValue(paramLength);
        this.newArray(scope.createArrayType(scope.getType(TypeConstants.JAVA_LANG_CLASS, 3), 1));
        if (paramLength > 0) {
                this.dup();
                for (int i = 0; i < paramLength; i++) {
                        this.generateInlinedValue(i);
                        TypeBinding parameter = methodBinding.parameters[i];
                        if (parameter.isBaseType()) {
                                this.getTYPE(parameter.id);
                        }
                        else   if (parameter.isArrayType()) {
                                ArrayBinding array = (ArrayBinding) parameter;
                                if (array.leafComponentType.isBaseType()) {
                                        this.getTYPE(array.leafComponentType.id);
                                }
                                else   {
                                        this.ldc(String.valueOf(array.leafComponentType.constantPoolName()).replace('/', '.'));
                                        this.invokeClassForName();
                                }
                                int dimensions = array.dimensions;
                                this.generateInlinedValue(dimensions);
                                this.newarray(TypeIds.T_int);
                                this.invokeArrayNewInstance();
                                this.invokeObjectGetClass();
                               }
                               else {
                                // parameter is a reference binding
                                this.ldc(String.valueOf(methodBinding.declaringClass.constantPoolName()).replace('/', '.'));
                                this.invokeClassForName();
                               }
                        this.aastore();
                        if (i < paramLength - 1) {
                                this.dup();
                        }
                }
        }
        this.invokeClassGetDeclaredConstructor();
        this.dup();
        this.iconst_1();
        this.invokeAccessibleObjectSetAccessible();


Clone Instance
2
Line Count
38
Source Line
1821
Source File
plugins/org.eclipse.jdt.core/compiler/org/eclipse/jdt/internal/compiler/codegen/CodeStream.java

        int paramLength = methodBinding.parameters.length;
        this.generateInlinedValue(paramLength);
        this.newArray(scope.createArrayType(scope.getType(TypeConstants.JAVA_LANG_CLASS, 3), 1));
        if (paramLength > 0) {
                this.dup();
                for (int i = 0; i < paramLength; i++) {
                        this.generateInlinedValue(i);
                        TypeBinding parameter = methodBinding.parameters[i];
                        if (parameter.isBaseType()) {
                                this.getTYPE(parameter.id);
                        }
                        else   if (parameter.isArrayType()) {
                                ArrayBinding array = (ArrayBinding) parameter;
                                if (array.leafComponentType.isBaseType()) {
                                        this.getTYPE(array.leafComponentType.id);
                                }
                                else   {
                                        this.ldc(String.valueOf(array.leafComponentType.constantPoolName()).replace('/', '.'));
                                        this.invokeClassForName();
                                }
                                int dimensions = array.dimensions;
                                this.generateInlinedValue(dimensions);
                                this.newarray(TypeIds.T_int);
                                this.invokeArrayNewInstance();
                                this.invokeObjectGetClass();
                               }
                               else {
                                // parameter is a reference binding
                                this.ldc(String.valueOf(methodBinding.declaringClass.constantPoolName()).replace('/', '.'));
                                this.invokeClassForName();
                               }
                        this.aastore();
                        if (i < paramLength - 1) {
                                this.dup();
                        }
                }
        }
        this.invokeClassGetDeclaredMethod();
        this.dup();
        this.iconst_1();
        this.invokeAccessibleObjectSetAccessible();


Clone AbstractionParameter Count: 1Parameter Bindings

int paramLength = methodBinding.parameters.length;
this.generateInlinedValue(paramLength);
this.newArray(scope.createArrayType(scope.getType(TypeConstants.JAVA_LANG_CLASS, 3), 1));
if (paramLength > 0) {
  this.dup();
  for (int i = 0; i < paramLength; i++) {
    this.generateInlinedValue(i);
    TypeBinding parameter = methodBinding.parameters[i];
    if (parameter.isBaseType()) {
      this.getTYPE(parameter.id);
    }
    else
      if (parameter.isArrayType()) {
        ArrayBinding array = (ArrayBinding) parameter;
        if (array.leafComponentType.isBaseType()) {
          this.getTYPE(array.leafComponentType.id);
        }
        else {
          this.ldc(String.valueOf(array.leafComponentType.constantPoolName()).replace('/', '.'));
          this.invokeClassForName();
        }
        int dimensions = array.dimensions;
        this.generateInlinedValue(dimensions);
        this.newarray(TypeIds.T_int);
        this.invokeArrayNewInstance();
        this.invokeObjectGetClass();
      }
      else {
        // parameter is a reference binding
        this.ldc(String.valueOf(methodBinding.declaringClass.constantPoolName()).replace('/', '.'));
        this.invokeClassForName();
      }
    this.aastore();
    if (i < paramLength - 1) {
      this.dup();
    }
  }
}
this. [[#variableb61b9180]]();
this.dup();
this.iconst_1();
this.invokeAccessibleObjectSetAccessible();
 

CloneAbstraction
Parameter Bindings
Parameter
Index
Clone
Instance
Parameter
Name
Value
11[[#b61b9180]]
invokeClassGetDeclaredMethod 
12[[#b61b9180]]
invokeClassGetDeclaredConstructor