예제 #1
0
 public void visit(HasAnnotation hasAnnotation) {
   ReflectionVar v = (ReflectionVar) hasAnnotation.getVar();
   Object value = v.getBindingAtJoinPoint(thisObject, targetObject, args);
   World world = v.getType().getWorld();
   ResolvedType actualVarType = world.resolve(value.getClass().getName());
   ResolvedType requiredAnnotationType = hasAnnotation.getAnnotationType().resolve(world);
   matches = actualVarType.hasAnnotation(requiredAnnotationType);
 }