private int hashCode(@Nullable String name, @NotNull String qualifier, PsiExpression @NotNull ... operands) {
    int hash = name != null ? name.hashCode() : 0;
    hash = hash * 31 + qualifier.hashCode() * 31;
    for (PsiExpression operand : operands) {
      hash = hash * 31 + hashCode(operand);
    }
    return hash; 
  }
private int hashCode(@Nullable String name, @NotNull String qualifier, PsiExpression @NotNull ... operands)