public ProximityTerm Proximity(string field, int proximity, params string[] words)
 {
     var term = new ProximityTerm(this, field, proximity, words);
     _term = term;
     return term;
 }
 public Term Between(Token from, Token to, bool inclusive = true)
 {
     _term = new RangeTerm(this, _field, from, to, inclusive);
     return _term;
 }
 public Term Group(Token value, Func<Term, Term> groupSetup)
 {
     var groupedTerm = groupSetup(new UnaryTerm(this, _field, value));
     _grouped = true;
     _term = new GroupTerm(this, _field, groupedTerm);
     return _term;
 }
 public Term Search(Token value)
 {
     _term = new UnaryTerm(this, _field, value);
     return _term;
 }