Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

refactor(clone): Deprecates CoreFactory#clone for CtElement#clone. #677

Merged
merged 1 commit into from
May 26, 2016
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
6 changes: 3 additions & 3 deletions src/main/java/spoon/generating/replace/ReplaceScanner.java
Original file line number Diff line number Diff line change
Expand Up @@ -71,7 +71,7 @@ public <T> void visitCtMethod(CtMethod<T> element) {
}

Factory factory = element.getFactory();
CtMethod<T> clone = factory.Core().clone(element);
CtMethod<T> clone = element.clone();
clone.getBody().getStatements().clear();
for (int i = 1; i < element.getBody().getStatements().size() - 1; i++) {
CtInvocation inv = element.getBody().getStatement(i);
Expand Down Expand Up @@ -129,7 +129,7 @@ private CtTypeReference getGetterType(Factory factory, CtInvocation getter) {
if (type instanceof CtTypeParameterReference) {
getterType = getTypeFromTypeParameterReference((CtTypeParameterReference) getter.getExecutable().getDeclaration().getType());
} else {
getterType = factory.Core().clone(type);
getterType = type.clone();
}
getterType.getActualTypeArguments().clear();
return getterType;
Expand All @@ -153,7 +153,7 @@ private CtTypeReference getTypeFromTypeParameterReference(CtTypeParameterReferen

private CtClass createListenerClass(Factory factory, String listenerName, CtTypeReference getterType, Type type) {
CtClass listener;
listener = factory.Core().clone(factory.Class().get(GENERATING_REPLACE_PACKAGE + ".CtListener"));
listener = factory.Class().get(GENERATING_REPLACE_PACKAGE + ".CtListener").clone();
listener.setSimpleName(listenerName);
target.addNestedType(listener);
final List<CtTypeReference> references = listener.getReferences(new ReferenceFilter<CtTypeReference>() {
Expand Down
6 changes: 4 additions & 2 deletions src/main/java/spoon/reflect/code/CtAnnotationFieldAccess.java
Original file line number Diff line number Diff line change
Expand Up @@ -24,7 +24,9 @@
* @param <T>
* Type of this field
*/
public interface CtAnnotationFieldAccess<T>
extends CtVariableRead<T>, CtTargetedExpression<T, CtExpression<?>> {
public interface CtAnnotationFieldAccess<T> extends CtVariableRead<T>, CtTargetedExpression<T, CtExpression<?>> {
CtFieldReference<T> getVariable();

@Override
CtAnnotationFieldAccess<T> clone();
}
3 changes: 3 additions & 0 deletions src/main/java/spoon/reflect/code/CtArrayAccess.java
Original file line number Diff line number Diff line change
Expand Up @@ -37,4 +37,7 @@ public interface CtArrayAccess<T, E extends CtExpression<?>> extends CtTargetedE
* Returns the expression that defines the index.
*/
CtExpression<Integer> getIndexExpression();

@Override
CtArrayAccess<T, E> clone();
}
2 changes: 2 additions & 0 deletions src/main/java/spoon/reflect/code/CtArrayRead.java
Original file line number Diff line number Diff line change
Expand Up @@ -28,4 +28,6 @@
* type of the array
*/
public interface CtArrayRead<T> extends CtArrayAccess<T, CtExpression<?>> {
@Override
CtArrayRead<T> clone();
}
2 changes: 2 additions & 0 deletions src/main/java/spoon/reflect/code/CtArrayWrite.java
Original file line number Diff line number Diff line change
Expand Up @@ -33,4 +33,6 @@
* type of the array
*/
public interface CtArrayWrite<T> extends CtArrayAccess<T, CtExpression<?>> {
@Override
CtArrayWrite<T> clone();
}
3 changes: 3 additions & 0 deletions src/main/java/spoon/reflect/code/CtAssert.java
Original file line number Diff line number Diff line change
Expand Up @@ -39,4 +39,7 @@ public interface CtAssert<T> extends CtStatement {
* Sets the expression of the assertion.
*/
<A extends CtAssert<T>> A setExpression(CtExpression<T> expression);

@Override
CtAssert<T> clone();
}
6 changes: 4 additions & 2 deletions src/main/java/spoon/reflect/code/CtAssignment.java
Original file line number Diff line number Diff line change
Expand Up @@ -24,8 +24,7 @@
* @param <A>
* type of expression to assign, it should extends &lt;T&gt;
*/
public interface CtAssignment<T, A extends T>
extends CtStatement, CtExpression<T>, CtRHSReceiver<A> {
public interface CtAssignment<T, A extends T> extends CtStatement, CtExpression<T>, CtRHSReceiver<A> {
/**
* Returns the assigned expression on the left-hand side (where the value is stored,
* e.g. in a variable, in an array, in a field ...).
Expand All @@ -36,4 +35,7 @@ public interface CtAssignment<T, A extends T>
* Sets the assigned expression (left hand side - LHS).
*/
<C extends CtAssignment<T, A>> C setAssigned(CtExpression<T> assigned);

@Override
CtAssignment<T, A> clone();
}
3 changes: 3 additions & 0 deletions src/main/java/spoon/reflect/code/CtBinaryOperator.java
Original file line number Diff line number Diff line change
Expand Up @@ -53,4 +53,7 @@ public interface CtBinaryOperator<T> extends CtExpression<T> {
* Gets the kind of this binary operator.
*/
BinaryOperatorKind getKind();

@Override
CtBinaryOperator<T> clone();
}
3 changes: 3 additions & 0 deletions src/main/java/spoon/reflect/code/CtBlock.java
Original file line number Diff line number Diff line change
Expand Up @@ -85,4 +85,7 @@ public interface CtBlock<R> extends CtStatement, CtStatementList, TemplateParame
* Replaces this element by another one.
*/
<T extends R> void replace(CtBlock<T> element);

@Override
CtBlock<R> clone();
}
3 changes: 3 additions & 0 deletions src/main/java/spoon/reflect/code/CtBreak.java
Original file line number Diff line number Diff line change
Expand Up @@ -31,4 +31,7 @@ public interface CtBreak extends CtCFlowBreak {
* defined).
*/
<T extends CtBreak> T setTargetLabel(String targetLabel);

@Override
CtBreak clone();
}
3 changes: 3 additions & 0 deletions src/main/java/spoon/reflect/code/CtCase.java
Original file line number Diff line number Diff line change
Expand Up @@ -33,4 +33,7 @@ public interface CtCase<S> extends CtStatement, CtStatementList {
* Sets the case expression.
*/
<T extends CtCase<S>> T setCaseExpression(CtExpression<S> caseExpression);

@Override
CtCase<S> clone();
}
3 changes: 3 additions & 0 deletions src/main/java/spoon/reflect/code/CtCatch.java
Original file line number Diff line number Diff line change
Expand Up @@ -42,4 +42,7 @@ public interface CtCatch extends CtCodeElement {
* Sets the catch's body.
*/
<T extends CtCatch> T setBody(CtBlock<?> body);

@Override
CtCatch clone();
}
3 changes: 3 additions & 0 deletions src/main/java/spoon/reflect/code/CtCatchVariable.java
Original file line number Diff line number Diff line change
Expand Up @@ -34,4 +34,7 @@ public interface CtCatchVariable<T> extends CtVariable<T>, CtMultiTypedElement,
* @see spoon.reflect.declaration.CtNamedElement#getReference()
*/
CtCatchVariableReference<T> getReference();

@Override
CtCatchVariable<T> clone();
}
2 changes: 2 additions & 0 deletions src/main/java/spoon/reflect/code/CtCodeElement.java
Original file line number Diff line number Diff line change
Expand Up @@ -32,4 +32,6 @@ public interface CtCodeElement extends CtElement {
*/
<R extends CtCodeElement> R partiallyEvaluate();

@Override
CtCodeElement clone();
}
Original file line number Diff line number Diff line change
Expand Up @@ -24,7 +24,7 @@
* be inserted in the program's model as is. Code snippets should be avoided
* since no controls can be performed on them.
*/
public interface CtCodeSnippetExpression<T> extends CtCodeSnippet, CtExpression<T> {
public interface CtCodeSnippetExpression<T> extends CtExpression<T>, CtCodeSnippet {

/**
* Compiles this expression snippet to produce the corresponding AST expression.
Expand All @@ -34,4 +34,6 @@ public interface CtCodeSnippetExpression<T> extends CtCodeSnippet, CtExpression<
*/
<E extends CtExpression<T>> E compile() throws SnippetCompilationError;

@Override
CtCodeSnippetExpression<T> clone();
}
4 changes: 3 additions & 1 deletion src/main/java/spoon/reflect/code/CtCodeSnippetStatement.java
Original file line number Diff line number Diff line change
Expand Up @@ -25,7 +25,7 @@
* since no controls can be performed on them.
*/

public interface CtCodeSnippetStatement extends CtCodeSnippet, CtStatement {
public interface CtCodeSnippetStatement extends CtStatement, CtCodeSnippet {

/**
* Compiles this statement code snippet to produce the corresponding AST
Expand All @@ -37,4 +37,6 @@ public interface CtCodeSnippetStatement extends CtCodeSnippet, CtStatement {
*/
<S extends CtStatement> S compile() throws SnippetCompilationError;

@Override
CtCodeSnippetStatement clone();
}
3 changes: 3 additions & 0 deletions src/main/java/spoon/reflect/code/CtComment.java
Original file line number Diff line number Diff line change
Expand Up @@ -55,4 +55,7 @@ enum CommentType {
CommentType getCommentType();

<E extends CtComment> E setCommentType(CommentType commentType);

@Override
CtComment clone();
}
3 changes: 3 additions & 0 deletions src/main/java/spoon/reflect/code/CtConditional.java
Original file line number Diff line number Diff line change
Expand Up @@ -50,4 +50,7 @@ public interface CtConditional<T> extends CtExpression<T> {
* Sets the condition expression.
*/
<C extends CtConditional<T>> C setCondition(CtExpression<Boolean> condition);

@Override
CtConditional<T> clone();
}
2 changes: 2 additions & 0 deletions src/main/java/spoon/reflect/code/CtConstructorCall.java
Original file line number Diff line number Diff line change
Expand Up @@ -25,4 +25,6 @@
* created type
*/
public interface CtConstructorCall<T> extends CtTargetedExpression<T, CtExpression<?>>, CtAbstractInvocation<T>, CtStatement, CtGenericElementReference {
@Override
CtConstructorCall<T> clone();
}
3 changes: 3 additions & 0 deletions src/main/java/spoon/reflect/code/CtContinue.java
Original file line number Diff line number Diff line change
Expand Up @@ -43,4 +43,7 @@ public interface CtContinue extends CtCFlowBreak {
* defined).
*/
<T extends CtContinue> T setTargetLabel(String targetLabel);

@Override
CtContinue clone();
}
3 changes: 3 additions & 0 deletions src/main/java/spoon/reflect/code/CtDo.java
Original file line number Diff line number Diff line change
Expand Up @@ -29,4 +29,7 @@ public interface CtDo extends CtLoop {
* Sets the looping test as a boolean expression.
*/
<T extends CtDo> T setLoopingExpression(CtExpression<Boolean> expression);

@Override
CtDo clone();
}
Original file line number Diff line number Diff line change
Expand Up @@ -39,4 +39,7 @@ public interface CtExecutableReferenceExpression<T, E extends CtExpression<?>> e
* Sets the executable will be referenced by the expression.
*/
<C extends CtExecutableReferenceExpression<T, E>> C setExecutable(CtExecutableReference<T> executable);

@Override
CtExecutableReferenceExpression<T, E> clone();
}
6 changes: 4 additions & 2 deletions src/main/java/spoon/reflect/code/CtExpression.java
Original file line number Diff line number Diff line change
Expand Up @@ -16,12 +16,12 @@
*/
package spoon.reflect.code;

import java.util.List;

import spoon.reflect.declaration.CtTypedElement;
import spoon.reflect.reference.CtTypeReference;
import spoon.template.TemplateParameter;

import java.util.List;

/**
* This abstract code element defines a typed expression.
*
Expand Down Expand Up @@ -50,4 +50,6 @@ public interface CtExpression<T> extends CtCodeElement, CtTypedElement<T>, Templ
*/
<E extends T> void replace(CtExpression<E> element);

@Override
CtExpression<T> clone();
}
3 changes: 3 additions & 0 deletions src/main/java/spoon/reflect/code/CtFieldAccess.java
Original file line number Diff line number Diff line change
Expand Up @@ -26,4 +26,7 @@
*/
public interface CtFieldAccess<T> extends CtVariableRead<T>, CtTargetedExpression<T, CtExpression<?>> {
CtFieldReference<T> getVariable();

@Override
CtFieldAccess<T> clone();
}
2 changes: 2 additions & 0 deletions src/main/java/spoon/reflect/code/CtFieldRead.java
Original file line number Diff line number Diff line change
Expand Up @@ -28,4 +28,6 @@
* type of the field
*/
public interface CtFieldRead<T> extends CtFieldAccess<T> {
@Override
CtFieldRead<T> clone();
}
2 changes: 2 additions & 0 deletions src/main/java/spoon/reflect/code/CtFieldWrite.java
Original file line number Diff line number Diff line change
Expand Up @@ -33,4 +33,6 @@
* type of the field
*/
public interface CtFieldWrite<T> extends CtFieldAccess<T> {
@Override
CtFieldWrite<T> clone();
}
2 changes: 2 additions & 0 deletions src/main/java/spoon/reflect/code/CtFor.java
Original file line number Diff line number Diff line change
Expand Up @@ -73,4 +73,6 @@ public interface CtFor extends CtLoop {
*/
boolean removeForUpdate(CtStatement statement);

@Override
CtFor clone();
}
3 changes: 3 additions & 0 deletions src/main/java/spoon/reflect/code/CtForEach.java
Original file line number Diff line number Diff line change
Expand Up @@ -40,4 +40,7 @@ public interface CtForEach extends CtLoop {
* Sets the variable that references the currently iterated element.
*/
<T extends CtForEach> T setVariable(CtLocalVariable<?> variable);

@Override
CtForEach clone();
}
3 changes: 3 additions & 0 deletions src/main/java/spoon/reflect/code/CtIf.java
Original file line number Diff line number Diff line change
Expand Up @@ -54,4 +54,7 @@ public interface CtIf extends CtStatement, TemplateParameter<Void> {
* Sets the statement executed when the condition is true.
*/
<T extends CtIf> T setThenStatement(CtStatement thenStatement);

@Override
CtIf clone();
}
3 changes: 3 additions & 0 deletions src/main/java/spoon/reflect/code/CtInvocation.java
Original file line number Diff line number Diff line change
Expand Up @@ -33,4 +33,7 @@ public interface CtInvocation<T> extends CtAbstractInvocation<T>, CtStatement, C
*/
@Override
CtTypeReference<T> getType();

@Override
CtInvocation<T> clone();
}
3 changes: 3 additions & 0 deletions src/main/java/spoon/reflect/code/CtLambda.java
Original file line number Diff line number Diff line change
Expand Up @@ -53,4 +53,7 @@ public interface CtLambda<T> extends CtExpression<T>, CtExecutable<T> {
* if the lambda already has a value in the body attribute.
*/
<C extends CtLambda<T>> C setExpression(CtExpression<T> expression);

@Override
CtLambda<T> clone();
}
2 changes: 2 additions & 0 deletions src/main/java/spoon/reflect/code/CtLiteral.java
Original file line number Diff line number Diff line change
Expand Up @@ -34,4 +34,6 @@ public interface CtLiteral<T> extends CtExpression<T> {
*/
<C extends CtLiteral<T>> C setValue(T value);

@Override
CtLiteral<T> clone();
}
3 changes: 3 additions & 0 deletions src/main/java/spoon/reflect/code/CtLocalVariable.java
Original file line number Diff line number Diff line change
Expand Up @@ -34,4 +34,7 @@ public interface CtLocalVariable<T> extends CtStatement, CtVariable<T>, CtRHSRec
* @see spoon.reflect.declaration.CtNamedElement#getReference()
*/
CtLocalVariableReference<T> getReference();

@Override
CtLocalVariable<T> clone();
}
3 changes: 3 additions & 0 deletions src/main/java/spoon/reflect/code/CtLoop.java
Original file line number Diff line number Diff line change
Expand Up @@ -32,4 +32,7 @@ public interface CtLoop extends CtStatement, TemplateParameter<Void> {
* Sets the body of this loop.
*/
<T extends CtLoop> T setBody(CtStatement body);

@Override
CtLoop clone();
}
2 changes: 2 additions & 0 deletions src/main/java/spoon/reflect/code/CtNewArray.java
Original file line number Diff line number Diff line change
Expand Up @@ -66,4 +66,6 @@ public interface CtNewArray<T> extends CtExpression<T> {
*/
boolean removeElement(CtExpression<?> expression);

@Override
CtNewArray<T> clone();
}
2 changes: 2 additions & 0 deletions src/main/java/spoon/reflect/code/CtNewClass.java
Original file line number Diff line number Diff line change
Expand Up @@ -36,4 +36,6 @@ public interface CtNewClass<T> extends CtConstructorCall<T> {
*/
<N extends CtNewClass> N setAnonymousClass(CtClass<?> anonymousClass);

@Override
CtNewClass<T> clone();
}
3 changes: 3 additions & 0 deletions src/main/java/spoon/reflect/code/CtOperatorAssignment.java
Original file line number Diff line number Diff line change
Expand Up @@ -29,4 +29,7 @@ public interface CtOperatorAssignment<T, A extends T> extends CtAssignment<T, A>
* Gets the operator kind.
*/
BinaryOperatorKind getKind();

@Override
CtOperatorAssignment<T, A> clone();
}
3 changes: 3 additions & 0 deletions src/main/java/spoon/reflect/code/CtReturn.java
Original file line number Diff line number Diff line change
Expand Up @@ -32,4 +32,7 @@ public interface CtReturn<R> extends CtCFlowBreak, TemplateParameter<Void> {
* Sets the returned expression.
*/
<T extends CtReturn<R>> T setReturnedExpression(CtExpression<R> returnedExpression);

@Override
CtReturn<R> clone();
}
3 changes: 3 additions & 0 deletions src/main/java/spoon/reflect/code/CtStatement.java
Original file line number Diff line number Diff line change
Expand Up @@ -63,4 +63,7 @@ public interface CtStatement extends CtCodeElement {
* Replaces this element by another one.
*/
void replace(CtStatement element);

@Override
CtStatement clone();
}
3 changes: 3 additions & 0 deletions src/main/java/spoon/reflect/code/CtStatementList.java
Original file line number Diff line number Diff line change
Expand Up @@ -43,4 +43,7 @@ public interface CtStatementList extends CtCodeElement, Iterable<CtStatement> {
* Removes a statement.
*/
void removeStatement(CtStatement statement);

@Override
CtStatementList clone();
}
2 changes: 2 additions & 0 deletions src/main/java/spoon/reflect/code/CtSuperAccess.java
Original file line number Diff line number Diff line change
Expand Up @@ -23,4 +23,6 @@
* Type of super
*/
public interface CtSuperAccess<T> extends CtVariableRead<T>, CtTargetedExpression<T, CtExpression<?>> {
@Override
CtSuperAccess<T> clone();
}
3 changes: 3 additions & 0 deletions src/main/java/spoon/reflect/code/CtSwitch.java
Original file line number Diff line number Diff line change
Expand Up @@ -63,4 +63,7 @@ public interface CtSwitch<S> extends CtStatement {
* Removes a case;
*/
boolean removeCase(CtCase<? super S> c);

@Override
CtSwitch<S> clone();
}
3 changes: 3 additions & 0 deletions src/main/java/spoon/reflect/code/CtSynchronized.java
Original file line number Diff line number Diff line change
Expand Up @@ -41,4 +41,7 @@ public interface CtSynchronized extends CtStatement {
* Sets the synchronized block.
*/
<T extends CtSynchronized> T setBlock(CtBlock<?> block);

@Override
CtSynchronized clone();
}
Loading