@java.lang.Override public void set(spoon.reflect.code.CtExpression replace) { this.element.setOperand(replace); } }
@Override public <T, U> void setValue(T element, U value) { castTarget(element).setOperand(castValue(value)); } }
@Override public <T> void visitCtUnaryOperator(CtUnaryOperator<T> operator) { if (operator.getOperand() == null && child instanceof CtExpression) { operator.setOperand((CtExpression<T>) child); return; } super.visitCtUnaryOperator(operator); }
public <T> void visitCtUnaryOperator(final spoon.reflect.code.CtUnaryOperator<T> operator) { spoon.reflect.code.CtUnaryOperator<T> aCtUnaryOperator = operator.getFactory().Core().createUnaryOperator(); this.builder.copy(operator, aCtUnaryOperator); aCtUnaryOperator.setAnnotations(this.cloneHelper.clone(operator.getAnnotations())); aCtUnaryOperator.setType(this.cloneHelper.clone(operator.getType())); aCtUnaryOperator.setTypeCasts(this.cloneHelper.clone(operator.getTypeCasts())); aCtUnaryOperator.setOperand(this.cloneHelper.clone(operator.getOperand())); aCtUnaryOperator.setComments(this.cloneHelper.clone(operator.getComments())); this.cloneHelper.tailor(operator, aCtUnaryOperator); this.other = aCtUnaryOperator; }
@SuppressWarnings({ "unchecked", "rawtypes" }) @Override public <T> void visitCtUnaryOperator(CtUnaryOperator<T> operator) { super.visitCtUnaryOperator(operator); CtExpression exper=operator.getOperand(); if (candidates.containsKey(exper)) { operator.setOperand(candidates.get(exper)); saveSketchAndSynthesize(); operator.setOperand(exper); resoreDiskFile(); } }
@Override public <T> void visitCtUnaryOperator(CtUnaryOperator<T> operator) { if (operator.getOperand() == null && child instanceof CtExpression) { operator.setOperand((CtExpression<T>) child); return; } super.visitCtUnaryOperator(operator); }
@Override public List<MutantCtElement> execute(CtElement toMutate) { //List<CtElement> result = new ArrayList<CtElement>(); List<MutantCtElement> result = new ArrayList<MutantCtElement>(); if (toMutate instanceof CtUnaryOperator<?>) { CtUnaryOperator<?> unary = (CtUnaryOperator<?>) toMutate; if (unary.getKind() == UnaryOperatorKind.NOT) { CtExpression expIF = factory.Core().clone(unary.getOperand()); MutantCtElement mutatn = new MutantCtElement(expIF,0.3); //result.add(expIF); result.add(mutatn); } } else { if (toMutate instanceof CtTypedElement<?>) { CtExpression<?> inv = (CtExpression<?>) toMutate; if (inv.getType()!= null && inv.getType().getSimpleName().equals(boolean.class.getSimpleName())) { CtExpression<?> invClone = factory.Core().clone(inv); CtUnaryOperator unary = factory.Core().createUnaryOperator(); unary.setOperand(invClone); unary.setKind(UnaryOperatorKind.NOT); //result.add(unary); MutantCtElement mutatn = new MutantCtElement(unary,3); //result.add(expIF); result.add(mutatn); } } } return result; }
private CtIf createNotInitIf() { CtIf ctIf = f().Core().createIf(); CtUnaryOperator<Boolean> negInit = f().Core().createUnaryOperator(); negInit.setKind(NOT); negInit.setOperand(createStageInitInvocation()); ctIf.setCondition(negInit); return ctIf; }