PsiType (@NotNull PsiMethod method) { if (GdkMethodUtil.isMacro(method)) { return null; } if (method instanceof GrMethod) { return ((GrMethod)method).getInferredReturnType(); } else if (method instanceof GrAccessorMethod) { return ((GrAccessorMethod)method).getInferredReturnType(); } else if (method instanceof GrGdkMethod) { return getSmartReturnType(((GrGdkMethod)method).getStaticMethod()); } else { return method.getReturnType(); } }