public Stream<S> findMatches(Q query) {
        Object[] queryArray = matchFields.stream().map(mf -> mf.extract(query)).toArray();

        HollowHashIndexResult matches = hhi.findMatches(queryArray);
        if (matches == null) {
            return Stream.empty();
        }

        return matches.stream().mapToObj(i -> selectField.extract(api, i));
    }
public Stream<S> findMatches(Q query) {
        Object[] queryArray = matchFields.stream().map(mf -> mf.extract(query)).toArray();

        HollowHashIndexResult matches = hhi.findMatches(queryArray);
        if (matches == null) {
            return Stream.empty();
        }

        return matches.stream().mapToObj(i -> selectField.extract(api, i));
    }
public Stream < S > findMatches ( Q query ) { Object [ ] queryArray = matchFields . stream ( ) . map ( mf -> mf . extract ( query ) ) . toArray ( ) ; HollowHashIndexResult matches = hhi . findMatches ( queryArray ) ; if ( matches == null ) { return Stream . empty ( ) ; } return matches . stream ( ) . mapToObj ( i -> selectField . extract ( api , i ) ) ; }
Finds matches for a given query.

@param query the query
@return a stream of matching records (may be empty if there are no matches)
Finds matches for a given query .