in assets/js/lunr/lunr.js [3262:3297]
lunr.QueryParser.parsePresence = function (parser) {
var lexeme = parser.consumeLexeme()
if (lexeme == undefined) {
return
}
switch (lexeme.str) {
case "-":
parser.currentClause.presence = lunr.Query.presence.PROHIBITED
break
case "+":
parser.currentClause.presence = lunr.Query.presence.REQUIRED
break
default:
var errorMessage = "unrecognised presence operator'" + lexeme.str + "'"
throw new lunr.QueryParseError (errorMessage, lexeme.start, lexeme.end)
}
var nextLexeme = parser.peekLexeme()
if (nextLexeme == undefined) {
var errorMessage = "expecting term or field, found nothing"
throw new lunr.QueryParseError (errorMessage, lexeme.start, lexeme.end)
}
switch (nextLexeme.type) {
case lunr.QueryLexer.FIELD:
return lunr.QueryParser.parseField
case lunr.QueryLexer.TERM:
return lunr.QueryParser.parseTerm
default:
var errorMessage = "expecting term or field, found '" + nextLexeme.type + "'"
throw new lunr.QueryParseError (errorMessage, nextLexeme.start, nextLexeme.end)
}
}