CtFieldRead fieldRead = getFactory().Core().createFieldRead(); fieldRead.setVariable(variable); fieldRead.setTarget(target); fieldRead.setType(target.getAccessedType()); res = fieldRead; CtFieldRead fieldRead = getFactory().Core().createFieldRead(); fieldRead.setVariable(variableRef); fieldRead.setTarget(target); fieldRead.setType(declaringClass); res = fieldRead;
/** * Creates a class access expression of the form <code>C.class</code>. * * @param <T> * the actual type of the accessed class if available * @param type * a type reference to the accessed class * @return the class access expression. */ public <T> CtFieldAccess<Class<T>> createClassAccess(CtTypeReference<T> type) { @SuppressWarnings({ "rawtypes", "unchecked" }) CtTypeReference<Class<T>> classType = (CtTypeReference) factory.Type().createReference(Class.class); CtTypeAccess<T> typeAccess = factory.Code().createTypeAccess(type); CtFieldReference<Class<T>> fieldReference = factory.Core().createFieldReference(); fieldReference.setSimpleName("class"); fieldReference.setType(classType); fieldReference.setDeclaringType(type); CtFieldRead<Class<T>> fieldRead = factory.Core().createFieldRead(); fieldRead.setType(classType.clone()); fieldRead.setVariable(fieldReference); fieldRead.setTarget(typeAccess); return fieldRead; }
@java.lang.Override public <T> void visitCtFieldRead(final spoon.reflect.code.CtFieldRead<T> fieldRead) { spoon.reflect.code.CtFieldRead<T> aCtFieldRead = fieldRead.getFactory().Core().createFieldRead(); this.builder.copy(fieldRead, aCtFieldRead); aCtFieldRead.setAnnotations(this.cloneHelper.clone(fieldRead.getAnnotations())); aCtFieldRead.setTypeCasts(this.cloneHelper.clone(fieldRead.getTypeCasts())); aCtFieldRead.setTarget(this.cloneHelper.clone(fieldRead.getTarget())); aCtFieldRead.setVariable(this.cloneHelper.clone(fieldRead.getVariable())); aCtFieldRead.setComments(this.cloneHelper.clone(fieldRead.getComments())); this.cloneHelper.tailor(fieldRead, aCtFieldRead); this.other = aCtFieldRead; }
fieldRead.setTarget(factory.createTypeAccess(ctTypeOfException)); final CtFieldReference fieldReference = factory.createFieldReference(); fieldReference.setDeclaringType(ctTypeOfException);