public boolean equals(Object o) {
    if (this == o) return true;
    if (!(o instanceof MatchOptions matchOptions)) return false;

    if (caseSensitiveMatch != matchOptions.caseSensitiveMatch) return false;
    if (looseMatching != matchOptions.looseMatching) return false;
    if (recursiveSearch != matchOptions.recursiveSearch) return false;
    if (searchInjectedCode != matchOptions.searchInjectedCode) return false;
    if (!pattern.equals(matchOptions.pattern)) return false;
    if (!variableConstraints.equals(matchOptions.variableConstraints)) return false;
    if (!Objects.equals(myUnknownFileType, matchOptions.myUnknownFileType)) return false;
    if (myFileType != matchOptions.myFileType) return false;
    if (!Objects.equals(getDialect(), matchOptions.getDialect())) return false;
    if (!Objects.equals(myPatternContextId, matchOptions.myPatternContextId)) return false;

    return true;
  }
public boolean equals(Object o)