class_docstr: Instead of marching the sub-matchers along in parallel, this matcher
  pre-reads the scores for a large block of documents at a time from each
  matcher, accumulating the scores in an array.
  
  This is faster than the implementation using a binary tree of
  :class:`~whoosh.matching.binary.UnionMatcher` objects (possibly just
  because of less overhead), but it doesn't allow getting information about
  the "current" document other than the score, because there isn't really a
  current document, just an array of scores.
code: def _find_next(self):
      a = self._a
      docnum = self._docnum
      offset = self._offset
      limit = self._limit
  
      while docnum < limit:
          if a[docnum - offset] > 0:
              break
          docnum += 1
  
      if docnum == limit:
          self._docnum = self._min_id()
          self._read_part()
      else:
          self._docnum = docnum
  
imports: from __future__ import division
  from array import array
  from whoosh.compat import xrange
  from whoosh.matching import mcore
label_desc: Use image node_id 5 for calling the ArrayUnionMatcher obj's underlying member method code with example usage: obj._find_next() without return types