/*
 * Licensed to the Apache Software Foundation (ASF) under one or more
 * contributor license agreements.  See the NOTICE file distributed with
 * this work for additional information regarding copyright ownership.
 * The ASF licenses this file to You under the Apache License, Version 2.0
 * (the "License"); you may not use this file except in compliance with
 * the License.  You may obtain a copy of the License at
 *
 *     http://www.apache.org/licenses/LICENSE-2.0
 *
 * Unless required by applicable law or agreed to in writing, software
 * distributed under the License is distributed on an "AS IS" BASIS,
 * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
 * See the License for the specific language governing permissions and
 * limitations under the License.
 */
package org.apache.lucene.search.spell;


import org.apache.lucene.util.PriorityQueue;

import java.util.Comparator;


Sorts SuggestWord instances
See Also:
/** * Sorts SuggestWord instances * * @see org.apache.lucene.search.spell.SuggestWordScoreComparator * @see org.apache.lucene.search.spell.SuggestWordFrequencyComparator * */
public final class SuggestWordQueue extends PriorityQueue<SuggestWord> {
Default comparator: score then frequency.
See Also:
  • SuggestWordScoreComparator
/** * Default comparator: score then frequency. * @see SuggestWordScoreComparator */
public static final Comparator<SuggestWord> DEFAULT_COMPARATOR = new SuggestWordScoreComparator(); private Comparator<SuggestWord> comparator;
Params:
  • size – The size of the queue
/** * Use the {@link #DEFAULT_COMPARATOR} * @param size The size of the queue */
public SuggestWordQueue (int size) { super(size); comparator = DEFAULT_COMPARATOR; }
Specify the size of the queue and the comparator to use for sorting.
Params:
  • size – The size
  • comparator – The comparator.
/** * Specify the size of the queue and the comparator to use for sorting. * @param size The size * @param comparator The comparator. */
public SuggestWordQueue(int size, Comparator<SuggestWord> comparator){ super(size); this.comparator = comparator; } @Override protected final boolean lessThan (SuggestWord wa, SuggestWord wb) { int val = comparator.compare(wa, wb); return val < 0; } }