@Override public boolean matches(T variableAccess) { return variable.equals(variableAccess.getVariable()); }
@SuppressWarnings("unchecked") @Override public <T, U> U getValue(T element) { return ((U) ((Object) (castTarget(element).getVariable()))); }
private static String getPath(CtElement ele) { StringBuilder sb = new StringBuilder(); addParentPath(sb, ele); if (ele instanceof CtVariableAccess) { sb.append(':').append(((CtVariableAccess) ele).getVariable().getSimpleName()); } return sb.toString(); } private static void addParentPath(StringBuilder sb, CtElement ele) {
private <T> void visitVariableAccess(CtVariableAccess<T> variableAccess) { CtVariable<?> v = variableAccess.getVariable().getDeclaration(); if (v != null && v.hasModifier(ModifierKind.FINAL) && v.getDefaultExpression() != null) { setResult(evaluate(v.getDefaultExpression())); } else { setResult(variableAccess.clone()); } }
@Override public boolean matches(T variableAccess) { return variableAccess.getVariable().equals(variable); }
@Override public int compare(CtVariableAccess o1, CtVariableAccess o2) { return o1.getVariable().getSimpleName().compareTo(o2.getVariable().getSimpleName()); } });
public void revert() { for (CtVariableAccess va : olderNameOfVariable.keySet()) { String oldname = olderNameOfVariable.get(va); va.getVariable().setSimpleName(oldname); } olderNameOfVariable.clear(); }
public void add(CtVariableAccess e) { if (duplicates || !varaccessCacheNames.contains(e.getVariable().getSimpleName())) varaccess.add(e); varaccessCacheNames.add(e.getVariable().getSimpleName()); }
public static List<CtVariableAccess> collectStaticVariableAccess(CtElement rootElement, List<CtVariableAccess> varAccessCollected) { List<CtVariableAccess> statics = new ArrayList<>(); for (CtVariableAccess ctVariableAccess : varAccessCollected) { CtVariableReference varref = ctVariableAccess.getVariable(); if (isStatic(varref)) { statics.add(ctVariableAccess); } } return statics; }
@Override public <T> void scanCtVariableAccess(CtVariableAccess<T> variableAccess) { label = variableAccess.getVariable().getSimpleName(); }
@Override public void revert() { // newLiteral.replace(previousVariable); affectedVariable.getVariable().setSimpleName(previousname); previousname = null; }
public void add(CtVariableAccess e) { if (!varaccessCacheNames.contains(e.getVariable().getSimpleName())) varaccess.add(e); varaccessCacheNames.add(e.getVariable().getSimpleName()); }
@Override public <T> void visitCtVariableAccess(CtVariableAccess<T> variableAccess) { scan(variableAccess.getVariable()); }
@Override public String toString() { String r = ""; for (String ph : this.palceholdersToVariables.keySet()) { r += ph + " --> " + this.palceholdersToVariables.get(ph).get(0).getVariable().getSimpleName(); r += ", "; } return this.getClass().getSimpleName() + ": (" + r + ")"; }
@Override public boolean matches(CtVariableAccess element) { return element.getVariable().getDeclaration().equals(catches.get(0).getParameter()) && super.matches(element); } }).forEach(variableAccess -> variableAccess.replace(spoon.getFactory().createVariableRead(catchVariable.getReference(), false)));
@Override public void apply() { // previousVariable.replace(newLiteral); previousname = affectedVariable.getVariable().getSimpleName(); affectedVariable.getVariable().setSimpleName(placeholder_name); //Workarround affectedVariable.getFactory().getEnvironment().setNoClasspath(true); if (affectedVariable instanceof CtFieldAccess) { CtFieldAccess fieldAccess = (CtFieldAccess) affectedVariable; fieldAccess.getVariable().setDeclaringType(null); } }
@Override public <T> void visitCtVariableAccess(CtVariableAccess<T> variableAccess) { enterCtExpression(variableAccess); write(variableAccess.getVariable().getSimpleName()); exitCtExpression(variableAccess); }
public String toStringMap() { String r = ""; for (String ph_name : this.varplaceholder.getPalceholders().keySet()) { List<CtVariableAccess> va = this.varplaceholder.getPalceholders().get(ph_name); CtVariableAccess va1 = va.get(0); CtVariable vcomb = this.combination.getCombination().get(va1.getVariable().getSimpleName()); r += vcomb.getSimpleName() + " --> " + ph_name; r += ", "; } return r; } }
@Override public <T> void visitCtVariableAccess(CtVariableAccess<T> variableAccess) { enter(variableAccess); scan(variableAccess.getAnnotations()); scan(variableAccess.getType()); scanReferences(variableAccess.getTypeCasts()); scan(variableAccess.getVariable()); exit(variableAccess); }
@Override public <T> void visitCtVariableAccess(CtVariableAccess<T> variableAccess) { CtVariable<?> v = variableAccess.getVariable().getDeclaration(); if (v != null && v.hasModifier(ModifierKind.FINAL) && v.getDefaultExpression() != null) { setResult(evaluate(v, v.getDefaultExpression())); } else { setResult(variableAccess.getFactory().Core().clone(variableAccess)); } }