class_docstr: Stores token position and character start and end information for each
  posting.
  
  Supports: frequency, weight, positions, position_boosts (always reports
  position boost = 1.0), characters.
class_docstr_tok: ["Stores","token","position","and","character","start","and","end","information","for","each","posting",".","Supports",":","frequency",",","weight",",","positions",",","position_boosts","(","always","reports","position","boost","=","1.0",")",",","characters","."]
code: def word_values(self, value, analyzer, **kwargs):
      fb = self.field_boost
      seen = defaultdict(list)
      weights = defaultdict(float)
  
      kwargs["positions"] = True
      kwargs["chars"] = True
      kwargs["boosts"] = True
      for t in tokens(value, analyzer, kwargs):
          seen[t.text].append((t.pos, t.startchar, t.endchar))
          weights[t.text] += t.boost
  
      for w, poslist in iteritems(seen):
          value = self.encode(poslist)
          yield (w, len(poslist), weights[w] * fb, value)
  
imports: from collections import defaultdict
  from whoosh.analysis import unstopped, entoken
  from whoosh.compat import iteritems, dumps, loads, b
  from whoosh.system import emptybytes
  from whoosh.system import _INT_SIZE, _FLOAT_SIZE
  from whoosh.system import pack_uint, unpack_uint, pack_float, unpack_float
label_desc: Use image node_id 1 for calling the Characters obj's underlying member method code with example usage: obj.word_values(value, analyzer) without return types