private boolean wordsAhead() {
        while (tokens.hasNext()) {
            if (tokens.currentIsNoIgnore(SPACE)) {
                return false;
            }
            if (tokens.currentIsNoIgnore(NUMBER) || tokens.currentIsNoIgnore(WORD)) {
                return true;
            }
            tokens.skipNoIgnore();
        }
        return false;
    }
Returns an item and whether it had an explicit index ('indexname:' prefix).

@param indexPath the index name prefix this is in the context of, only non-empty if this is
                 inside a sameElement. The path includes the index name and the trailing dot.
@return an item and whether it has an explicit index, or a Pair with the first element null if none
container-search/src/main/java/com/yahoo/prelude/query/parser/StructuredParser.java