void (@NotNull GrTypeDefinition aClass, @NotNull PsiMethod method, @NotNull GrMethod result) { if (OverrideImplementUtil.isInsertOverride(method, aClass)) { result.getModifierList().addAnnotation(CommonClassNames.JAVA_LANG_OVERRIDE); } final GroovyPsiElementFactory factory = GroovyPsiElementFactory.getInstance(method.getProject()); final PsiParameter[] originalParams = method.getParameterList().getParameters(); GrParameter[] parameters = result.getParameters(); for (int i = 0; i < parameters.length; i++) { GrParameter parameter = parameters[i]; PsiParameter original = originalParams[i]; for (PsiAnnotation annotation : original.getModifierList().getAnnotations()) { final GrModifierList modifierList = parameter.getModifierList(); String qname = annotation.getQualifiedName(); if (qname != null && !modifierList.hasAnnotation(qname)) { if (annotation instanceof GrAnnotation) { modifierList.add(annotation); } else { modifierList.add(factory.createAnnotationFromText(annotation.getText())); } } } } }