@Nullable
  public static PsiElement[] getMethodParameterReferences(Method method, int parameterIndex) {

    // we dont have a parameter on resolved method
    Parameter[] parameters = method.getParameters();
    if (parameters.length == 0 || parameterIndex >= parameters.length) {
      return null;
    }

    final String tempVariableName = parameters[parameterIndex].getName();
    return PsiTreeUtil.collectElements(
        method.getLastChild(),
        new PsiElementFilter() {
          @Override
          public boolean isAccepted(PsiElement element) {
            return element instanceof Variable
                && tempVariableName.equals(((Variable) element).getName());
          }
        });
  }