Previous CloneSet | Next CloneSet | Back to Main Report |
Clone Mass | Clones in CloneSet | Parameter Count | Clone Similarity | Syntax Category [Sequence Length] |
---|---|---|---|---|
38 | 2 | 1 | 0.999 | statement_sequence[8] |
Clone Abstraction | Parameter Bindings |
Clone Instance (Click to see clone) | Line Count | Source Line | Source File |
---|---|---|---|
1 | 38 | 1767 | plugins/org.eclipse.jdt.core/compiler/org/eclipse/jdt/internal/compiler/codegen/CodeStream.java |
2 | 38 | 1821 | 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(); |
| ||||
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(); |
| |||
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 Index | Clone Instance | Parameter Name | Value |
---|---|---|---|
1 | 1 | [[#b61b9180]] | invokeClassGetDeclaredMethod |
1 | 2 | [[#b61b9180]] | invokeClassGetDeclaredConstructor |