class_docstr: Utility class for collections. Bundles up the logic we use for "should I
  keep drawing more values?" and handles starting and stopping examples in
  the right place.
  
  Intended usage is something like:
  
  elements = many(data, ...)
  while elements.more():
      add_stuff_to_result()
class_docstr_tok: ["Utility","class","for","collections",".","Bundles","up","the","logic","we","use","for","``","should","I","keep","drawing","more","values","?","''","and","handles","starting","and","stopping","examples","in","the","right","place",".","Intended","usage","is","something","like",":","elements","=","many","(","data",",","...",")","while","elements.more","(",")",":","add_stuff_to_result","(",")"]
docstr: Should I draw another element to add to the collection?
docstr_tok: ["Should","I","draw","another","element","to","add","to","the","collection","?"]
code: def more(self):
      """Should I draw another element to add to the collection?"""
      if self.drawn:
          self.data.stop_example(discard=self.rejected)
  
      self.drawn = True
      self.rejected = False
  
      self.data.start_example(ONE_FROM_MANY_LABEL)
  
      if self.min_size == self.max_size:
          should_continue = self.count < self.min_size
      elif self.force_stop:
          should_continue = False
      else:
          if self.count < self.min_size:
              p_continue = 1.0
          elif self.count >= self.max_size:
              p_continue = 0.0
          else:
              p_continue = self.stopping_value
          should_continue = biased_coin(self.data, p_continue)
  
      if should_continue:
          self.count += 1
          return True
      else:
          self.data.stop_example()
          return False
  
imports: from __future__ import absolute_import, division, print_function
  import enum
  import hashlib
  import heapq
  import sys
  from collections import OrderedDict
  from fractions import Fraction
  from hypothesis.errors import InvalidArgument
  from hypothesis.internal.compat import abc, bit_length, floor, hrange, int_from_bytes, qualname, str_to_bytes
  from hypothesis.internal.floats import int_to_float
label_desc: Use image node_id 2 for calling the many obj's underlying member method code with example usage: obj.more() and returns: True, False