summaryrefslogtreecommitdiffstats
path: root/container-search/src/main/java/com/yahoo/prelude/query/parser/SimpleParser.java
diff options
context:
space:
mode:
Diffstat (limited to 'container-search/src/main/java/com/yahoo/prelude/query/parser/SimpleParser.java')
-rw-r--r--container-search/src/main/java/com/yahoo/prelude/query/parser/SimpleParser.java33
1 files changed, 17 insertions, 16 deletions
diff --git a/container-search/src/main/java/com/yahoo/prelude/query/parser/SimpleParser.java b/container-search/src/main/java/com/yahoo/prelude/query/parser/SimpleParser.java
index fafbf55a522..b7355c43f81 100644
--- a/container-search/src/main/java/com/yahoo/prelude/query/parser/SimpleParser.java
+++ b/container-search/src/main/java/com/yahoo/prelude/query/parser/SimpleParser.java
@@ -1,7 +1,16 @@
// Copyright Yahoo. Licensed under the terms of the Apache 2.0 license. See LICENSE in the project root.
package com.yahoo.prelude.query.parser;
-import com.yahoo.prelude.query.*;
+import com.yahoo.prelude.query.AndItem;
+import com.yahoo.prelude.query.BlockItem;
+import com.yahoo.prelude.query.CompositeItem;
+import com.yahoo.prelude.query.Item;
+import com.yahoo.prelude.query.NotItem;
+import com.yahoo.prelude.query.OrItem;
+import com.yahoo.prelude.query.PhraseItem;
+import com.yahoo.prelude.query.RankItem;
+import com.yahoo.prelude.query.TermItem;
+import com.yahoo.prelude.query.TrueItem;
import com.yahoo.search.query.parser.ParserEnvironment;
import java.util.Iterator;
@@ -33,12 +42,12 @@ abstract class SimpleParser extends StructuredParser {
* If there's a explicit composite and some other terms,
* a rank terms combines them
*/
- protected Item anyItems(boolean topLevel, String defaultIndexName) {
+ protected Item anyItems(boolean topLevel) {
int position = tokens.getPosition();
Item item = null;
try {
- item = anyItemsBody(topLevel, defaultIndexName);
+ item = anyItemsBody(topLevel);
return item;
} finally {
if (item == null) {
@@ -47,14 +56,10 @@ abstract class SimpleParser extends StructuredParser {
}
}
- protected Item anyItems(boolean topLevel) {
- return anyItems(topLevel, null);
- }
-
- private Item anyItemsBody(boolean topLevel, String defaultIndexName) {
+ private Item anyItemsBody(boolean topLevel) {
Item topLevelItem = null;
NotItem not = null;
- Item item = null;
+ Item item;
do {
item = positiveItem();
if (item != null) {
@@ -92,7 +97,7 @@ abstract class SimpleParser extends StructuredParser {
}
if (item == null) {
- item = indexableItem(defaultIndexName);
+ item = indexableItem().getFirst();
if (item != null) {
if (topLevelItem == null) {
topLevelItem = item;
@@ -177,9 +182,7 @@ abstract class SimpleParser extends StructuredParser {
return null;
}
- if (item == null) {
- item = indexableItem();
- }
+ item = indexableItem().getFirst();
if (item == null) {
item = compositeItem();
@@ -200,12 +203,10 @@ abstract class SimpleParser extends StructuredParser {
* (+ items) are not found, but negatives are.
*/
private Item getItemAsPositiveItem(Item item, NotItem not) {
- if (!(item instanceof RankItem)) {
+ if (!(item instanceof RankItem rank)) {
return item;
}
- RankItem rank = (RankItem) item;
-
// Remove the not from the rank item, the rank should generally
// be the first, but this is not always the case
int limit = rank.getItemCount();