class_docstr: Matches documents containing any terms in a given range.
  
  >>> # Match documents where the indexed "id" field is greater than or equal
  >>> # to 'apple' and less than or equal to 'pear'.
  >>> TermRange("id", u"apple", u"pear")
class_docstr_tok: ["Matches","documents","containing","any","terms","in","a","given","range",".",">",">",">","#","Match","documents","where","the","indexed","``","id","''","field","is","greater","than","or","equal",">",">",">","#","to","'apple","'","and","less","than","or","equal","to","'pear","'",".",">",">",">","TermRange","(","``","id","''",",","u","''","apple","''",",","u","''","pear","''",")"]
code: def normalize(self):
      if self.start in ("", None) and self.end in (u("\uffff"), None):
          from whoosh.query import Every
  
          return Every(self.fieldname, boost=self.boost)
      elif self.start == self.end:
          if self.startexcl or self.endexcl:
              return qcore.NullQuery
          return terms.Term(
              self.fieldname, self.start, boost=self.boost
          )
      else:
          return TermRange(
              self.fieldname,
              self.start,
              self.end,
              self.startexcl,
              self.endexcl,
              boost=self.boost,
          )
  
imports: from __future__ import division
  from whoosh.compat import b, u
  from whoosh.query import qcore, terms, compound, wrappers
  from whoosh.util.times import datetime_to_long
label_desc: Use image node_id 2 for calling the TermRange obj's underlying member method code with example usage: obj.normalize() and returns: Every, terms, TermRange, qcore