public Query Query(String field)
{
List<BooleanClause> clauses = new List<BooleanClause>();
Query q, firstQuery = null;
int conj, mods;
mods = Modifiers();
q = Clause(field);
AddClause(clauses, CONJ_NONE, mods, q);
if (mods == MOD_NONE)
firstQuery = q;
while (true)
{
switch ((jj_ntk == -1) ? Jj_ntk() : jj_ntk)
{
case AndToken:
case OrToken:
case NotToken:
case PlusToken:
case MinusToken:
case LParanToken:
case StarToken:
case QuotedToken:
case TermToken:
case PrefixTermToken:
case WildTermToken:
case RangeInStartToken:
case RangeExStartToken:
case NumberToken:
break;
default:
jj_la1[4] = jj_gen;
goto label_1;
}
conj = Conjunction();
mods = Modifiers();
q = Clause(field);
AddClause(clauses, conj, mods, q);
}
label_1:
if (clauses.Count == 1 && firstQuery != null)
{
if (true) return firstQuery;
}
return GetBooleanQuery(clauses);
}