PsiLocalVariable (TerminalBlock tb, PsiMethodCallExpression call) { PsiExpression qualifierExpression = PsiUtil.skipParenthesizedExprDown(call.getMethodExpression().getQualifierExpression()); if (!(qualifierExpression instanceof PsiReferenceExpression)) return null; PsiLocalVariable variable = tryCast(((PsiReferenceExpression)qualifierExpression).resolve(), PsiLocalVariable.class); if (variable == null) return null; if (tb.getVariable() != variable && VariableAccessUtils.variableIsUsed(variable, call.getArgumentList())) return null; return variable; }