public static void addUsagesInStringsAndComments(@NotNull PsiElement element,
                                            @NotNull SearchScope searchScope,
                                            @NotNull String stringToSearch,
                                            @NotNull Collection<? super UsageInfo> results,
                                            @NotNull UsageInfoFactory factory) {
    Object lock = new Object();
    processUsagesInStringsAndComments(element, searchScope, stringToSearch, false, (commentOrLiteral, textRange) -> {
      UsageInfo usageInfo = factory.createUsageInfo(commentOrLiteral, textRange.getStartOffset(), textRange.getEndOffset());
      if (usageInfo != null) {
        synchronized (lock) {
          results.add(usageInfo);
        }
      }
      return true;
    });
  }
public static void addUsagesInStringsAndComments(@NotNull PsiElement element,
                                            @NotNull SearchScope searchScope,
                                            @NotNull String stringToSearch,
                                            @NotNull Collection<? super UsageInfo> results,
                                            @NotNull UsageInfoFactory factory)