| Previous CloneSet | Next CloneSet | Back to Main Report |
| Clone Mass | Clones in CloneSet | Parameter Count | Clone Similarity | Syntax Category [Sequence Length] |
|---|---|---|---|---|
| 22 | 7 | 3 | 0.953 | method_declaration |
| Clone Abstraction | Parameter Bindings |
| Clone Instance (Click to see clone) | Line Count | Source Line | Source File |
|---|---|---|---|
| 1 | 22 | 1279 | plugins/org.eclipse.jdt.core/compiler/org/eclipse/jdt/internal/compiler/ClassFile.java |
| 2 | 22 | 1309 | plugins/org.eclipse.jdt.core/compiler/org/eclipse/jdt/internal/compiler/ClassFile.java |
| 3 | 22 | 1339 | plugins/org.eclipse.jdt.core/compiler/org/eclipse/jdt/internal/compiler/ClassFile.java |
| 4 | 22 | 1370 | plugins/org.eclipse.jdt.core/compiler/org/eclipse/jdt/internal/compiler/ClassFile.java |
| 5 | 22 | 1400 | plugins/org.eclipse.jdt.core/compiler/org/eclipse/jdt/internal/compiler/ClassFile.java |
| 6 | 22 | 1430 | plugins/org.eclipse.jdt.core/compiler/org/eclipse/jdt/internal/compiler/ClassFile.java |
| 7 | 23 | 1454 | plugins/org.eclipse.jdt.core/compiler/org/eclipse/jdt/internal/compiler/ClassFile.java |
| ||||
/**
* INTERNAL USE-ONLY
* Generate the bytes for a synthetic method that provides an access to a private constructor.
*
* @param methodBinding org.eclipse.jdt.internal.compiler.nameloopkup.SyntheticAccessMethodBinding
*/
public void addSyntheticConstructorAccessMethod(SyntheticMethodBinding methodBinding) {
generateMethodInfoHeader(methodBinding);
int methodAttributeOffset = this.contentsOffset;
// this will add exception attribute, synthetic attribute, deprecated attribute,...
int attributeNumber = generateMethodInfoAttribute(methodBinding);
// Code attribute
int codeAttributeOffset = contentsOffset;
attributeNumber++; // add code attribute
generateCodeAttributeHeader();
codeStream.init(this );
codeStream.generateSyntheticBodyForConstructorAccess(methodBinding);
completeCodeAttributeForSyntheticMethod(
methodBinding,
codeAttributeOffset,
((SourceTypeBinding) methodBinding.declaringClass)
.scope
.referenceCompilationUnit()
.compilationResult
.getLineSeparatorPositions());
// update the number of attributes
contents[methodAttributeOffset++ ] = (byte) (attributeNumber >> 8);
contents[methodAttributeOffset] = (byte) attributeNumber;
}
|
| ||||
/**
* INTERNAL USE-ONLY
* Generate the bytes for a synthetic method that implements Enum#valueOf(String) for a given enum type
*
* @param methodBinding org.eclipse.jdt.internal.compiler.nameloopkup.SyntheticAccessMethodBinding
*/
public void addSyntheticEnumValueOfMethod(SyntheticMethodBinding methodBinding) {
generateMethodInfoHeader(methodBinding);
int methodAttributeOffset = this.contentsOffset;
// this will add exception attribute, synthetic attribute, deprecated attribute,...
int attributeNumber = generateMethodInfoAttribute(methodBinding);
// Code attribute
int codeAttributeOffset = contentsOffset;
attributeNumber++; // add code attribute
generateCodeAttributeHeader();
codeStream.init(this );
codeStream.generateSyntheticBodyForEnumValueOf(methodBinding);
completeCodeAttributeForSyntheticMethod(
methodBinding,
codeAttributeOffset,
((SourceTypeBinding) methodBinding.declaringClass)
.scope
.referenceCompilationUnit()
.compilationResult
.getLineSeparatorPositions());
// update the number of attributes
contents[methodAttributeOffset++ ] = (byte) (attributeNumber >> 8);
contents[methodAttributeOffset] = (byte) attributeNumber;
}
|
| ||||
/**
* INTERNAL USE-ONLY
* Generate the bytes for a synthetic method that implements Enum#values() for a given enum type
*
* @param methodBinding org.eclipse.jdt.internal.compiler.nameloopkup.SyntheticAccessMethodBinding
*/
public void addSyntheticEnumValuesMethod(SyntheticMethodBinding methodBinding) {
generateMethodInfoHeader(methodBinding);
int methodAttributeOffset = this.contentsOffset;
// this will add exception attribute, synthetic attribute, deprecated attribute,...
int attributeNumber = generateMethodInfoAttribute(methodBinding);
// Code attribute
int codeAttributeOffset = contentsOffset;
attributeNumber++; // add code attribute
generateCodeAttributeHeader();
codeStream.init(this );
codeStream.generateSyntheticBodyForEnumValues(methodBinding);
completeCodeAttributeForSyntheticMethod(
methodBinding,
codeAttributeOffset,
((SourceTypeBinding) methodBinding.declaringClass)
.scope
.referenceCompilationUnit()
.compilationResult
.getLineSeparatorPositions());
// update the number of attributes
contents[methodAttributeOffset++ ] = (byte) (attributeNumber >> 8);
contents[methodAttributeOffset] = (byte) attributeNumber;
}
|
| ||||
/**
* INTERNAL USE-ONLY
* Generate the byte for a problem method info that correspond to a synthetic method that
* generate an read access to a private field.
*
* @param methodBinding org.eclipse.jdt.internal.compiler.nameloopkup.SyntheticAccessMethodBinding
*/
public void addSyntheticFieldReadAccessMethod(SyntheticMethodBinding methodBinding) {
generateMethodInfoHeader(methodBinding);
int methodAttributeOffset = this.contentsOffset;
// this will add exception attribute, synthetic attribute, deprecated attribute,...
int attributeNumber = generateMethodInfoAttribute(methodBinding);
// Code attribute
int codeAttributeOffset = contentsOffset;
attributeNumber++; // add code attribute
generateCodeAttributeHeader();
codeStream.init(this );
codeStream.generateSyntheticBodyForFieldReadAccess(methodBinding);
completeCodeAttributeForSyntheticMethod(
methodBinding,
codeAttributeOffset,
((SourceTypeBinding) methodBinding.declaringClass)
.scope
.referenceCompilationUnit()
.compilationResult
.getLineSeparatorPositions());
// update the number of attributes
contents[methodAttributeOffset++ ] = (byte) (attributeNumber >> 8);
contents[methodAttributeOffset] = (byte) attributeNumber;
}
|
| ||||
/**
* INTERNAL USE-ONLY
* Generate the byte for a problem method info that correspond to a synthetic method that
* generate an write access to a private field.
*
* @param methodBinding org.eclipse.jdt.internal.compiler.nameloopkup.SyntheticAccessMethodBinding
*/
public void addSyntheticFieldWriteAccessMethod(SyntheticMethodBinding methodBinding) {
generateMethodInfoHeader(methodBinding);
int methodAttributeOffset = this.contentsOffset;
// this will add exception attribute, synthetic attribute, deprecated attribute,...
int attributeNumber = generateMethodInfoAttribute(methodBinding);
// Code attribute
int codeAttributeOffset = contentsOffset;
attributeNumber++; // add code attribute
generateCodeAttributeHeader();
codeStream.init(this );
codeStream.generateSyntheticBodyForFieldWriteAccess(methodBinding);
completeCodeAttributeForSyntheticMethod(
methodBinding,
codeAttributeOffset,
((SourceTypeBinding) methodBinding.declaringClass)
.scope
.referenceCompilationUnit()
.compilationResult
.getLineSeparatorPositions());
// update the number of attributes
contents[methodAttributeOffset++ ] = (byte) (attributeNumber >> 8);
contents[methodAttributeOffset] = (byte) attributeNumber;
}
|
| ||||
/**
* INTERNAL USE-ONLY
* Generate the bytes for a synthetic method that provides access to a private method.
*
* @param methodBinding org.eclipse.jdt.internal.compiler.nameloopkup.SyntheticAccessMethodBinding
*/
public void addSyntheticMethodAccessMethod(SyntheticMethodBinding methodBinding) {
generateMethodInfoHeader(methodBinding);
int methodAttributeOffset = this.contentsOffset;
// this will add exception attribute, synthetic attribute, deprecated attribute,...
int attributeNumber = generateMethodInfoAttribute(methodBinding);
// Code attribute
int codeAttributeOffset = contentsOffset;
attributeNumber++; // add code attribute
generateCodeAttributeHeader();
codeStream.init(this );
codeStream.generateSyntheticBodyForMethodAccess(methodBinding);
completeCodeAttributeForSyntheticMethod(
methodBinding,
codeAttributeOffset,
((SourceTypeBinding) methodBinding.declaringClass)
.scope
.referenceCompilationUnit()
.compilationResult
.getLineSeparatorPositions());
// update the number of attributes
contents[methodAttributeOffset++ ] = (byte) (attributeNumber >> 8);
contents[methodAttributeOffset] = (byte) attributeNumber;
}
|
| ||||
public void addSyntheticSwitchTable(SyntheticMethodBinding methodBinding) {
generateMethodInfoHeader(methodBinding);
int methodAttributeOffset = this.contentsOffset;
// this will add exception attribute, synthetic attribute, deprecated attribute,...
int attributeNumber = generateMethodInfoAttribute(methodBinding);
// Code attribute
int codeAttributeOffset = contentsOffset;
attributeNumber++; // add code attribute
generateCodeAttributeHeader();
codeStream.init(this );
codeStream.generateSyntheticBodyForSwitchTable(methodBinding);
completeCodeAttributeForSyntheticMethod(
true,
methodBinding,
codeAttributeOffset,
((SourceTypeBinding) methodBinding.declaringClass)
.scope
.referenceCompilationUnit()
.compilationResult
.getLineSeparatorPositions());
// update the number of attributes
contents[methodAttributeOffset++ ] = (byte) (attributeNumber >> 8);
contents[methodAttributeOffset] = (byte) attributeNumber;
}
|
| |||
/**
* INTERNAL USE-ONLY
* Generate the bytes for a synthetic method that provides an access to a private constructor.
*
* @param methodBinding org.eclipse.jdt.internal.compiler.nameloopkup.SyntheticAccessMethodBinding
*/
/**
* INTERNAL USE-ONLY
* Generate the bytes for a synthetic method that implements Enum#valueOf(String) for a given enum type
*
* @param methodBinding org.eclipse.jdt.internal.compiler.nameloopkup.SyntheticAccessMethodBinding
*/
/**
* INTERNAL USE-ONLY
* Generate the bytes for a synthetic method that implements Enum#values() for a given enum type
*
* @param methodBinding org.eclipse.jdt.internal.compiler.nameloopkup.SyntheticAccessMethodBinding
*/
/**
* INTERNAL USE-ONLY
* Generate the byte for a problem method info that correspond to a synthetic method that
* generate an read access to a private field.
*
* @param methodBinding org.eclipse.jdt.internal.compiler.nameloopkup.SyntheticAccessMethodBinding
*/
/**
* INTERNAL USE-ONLY
* Generate the byte for a problem method info that correspond to a synthetic method that
* generate an write access to a private field.
*
* @param methodBinding org.eclipse.jdt.internal.compiler.nameloopkup.SyntheticAccessMethodBinding
*/
/**
* INTERNAL USE-ONLY
* Generate the bytes for a synthetic method that provides access to a private method.
*
* @param methodBinding org.eclipse.jdt.internal.compiler.nameloopkup.SyntheticAccessMethodBinding
*/
public void [[#variable93b359e0]](SyntheticMethodBinding methodBinding) {
generateMethodInfoHeader(methodBinding);
int methodAttributeOffset = this.contentsOffset;
// this will add exception attribute, synthetic attribute, deprecated attribute,...
int attributeNumber = generateMethodInfoAttribute(methodBinding);
// Code attribute
int codeAttributeOffset = contentsOffset;
attributeNumber++; // add code attribute
generateCodeAttributeHeader();
codeStream.init(this );
codeStream. [[#variable93b35960]](methodBinding);
completeCodeAttributeForSyntheticMethod( [[#variable93b35900]], codeAttributeOffset, ((SourceTypeBinding) methodBinding.declaringClass).scope.referenceCompilationUnit().compilationResult.getLineSeparatorPositions());
// update the number of attributes
contents[methodAttributeOffset++ ] = (byte) (attributeNumber >> 8);
contents[methodAttributeOffset] = (byte) attributeNumber;
}
|
| CloneAbstraction |
| Parameter Index | Clone Instance | Parameter Name | Value |
|---|---|---|---|
| 1 | 1 | [[#93b359e0]] | addSyntheticConstructorAccessMethod |
| 1 | 2 | [[#93b359e0]] | addSyntheticEnumValueOfMethod |
| 1 | 3 | [[#93b359e0]] | addSyntheticEnumValuesMethod |
| 1 | 4 | [[#93b359e0]] | addSyntheticFieldReadAccessMethod |
| 1 | 5 | [[#93b359e0]] | addSyntheticFieldWriteAccessMethod |
| 1 | 6 | [[#93b359e0]] | addSyntheticMethodAccessMethod |
| 1 | 7 | [[#93b359e0]] | addSyntheticSwitchTable |
| 2 | 1 | [[#93b35960]] | generateSyntheticBodyForConstructorAccess |
| 2 | 2 | [[#93b35960]] | generateSyntheticBodyForEnumValueOf |
| 2 | 3 | [[#93b35960]] | generateSyntheticBodyForEnumValues |
| 2 | 4 | [[#93b35960]] | generateSyntheticBodyForFieldReadAccess |
| 2 | 5 | [[#93b35960]] | generateSyntheticBodyForFieldWriteAccess |
| 2 | 6 | [[#93b35960]] | generateSyntheticBodyForMethodAccess |
| 2 | 7 | [[#93b35960]] | generateSyntheticBodyForSwitchTable |
| 3 | 1 | [[#93b35900]] | methodBinding |
| 3 | 2 | [[#93b35900]] | methodBinding |
| 3 | 3 | [[#93b35900]] | methodBinding |
| 3 | 4 | [[#93b35900]] | methodBinding |
| 3 | 5 | [[#93b35900]] | methodBinding |
| 3 | 6 | [[#93b35900]] | methodBinding |
| 3 | 7 | [[#93b35900]] | true, methodBinding |