boolean (UExpression expression, UMethod method) { if (expression instanceof UQualifiedReferenceExpression qualifiedReference) { UExpression receiver = qualifiedReference.getReceiver(); UExpression selector = qualifiedReference.getSelector(); if (receiver instanceof USuperExpression && selector instanceof UCallExpression callExpression) { PsiMethod superMethod = callExpression.resolve(); if (superMethod == null || !MethodSignatureUtil.areSignaturesEqual(method.getJavaPsi(), superMethod)) return false; List<UExpression> args = callExpression.getValueArguments(); List<UParameter> params = method.getUastParameters(); for (int i = 0; i < args.size(); i++) { UExpression arg = args.get(i); if (!(arg instanceof USimpleNameReferenceExpression simpleNameReference)) return false; if (!params.get(i).equals(simpleNameReference.resolve())) return false; } return true; } } return false; }