parameters: (self, fileobj, chunk_size, full_file_size,
                   callbacks=None, enable_callbacks=True, close_callbacks=None)
docstring: Given a file object shown below::
  
              |___________________________________________________|
              0          |                 |                 full_file_size
                         |----chunk_size---|
                      f.tell()
  
          :type fileobj: file
          :param fileobj: File like object
  
          :type chunk_size: int
          :param chunk_size: The max chunk size to read.  Trying to read
              pass the end of the chunk size will behave like you've
              reached the end of the file.
  
          :type full_file_size: int
          :param full_file_size: The entire content length associated
              with ``fileobj``.
  
          :type callbacks: A list of function(amount_read)
          :param callbacks: Called whenever data is read from this object in the
              order provided.
  
          :type enable_callbacks: boolean
          :param enable_callbacks: True if to run callbacks. Otherwise, do not
              run callbacks
  
          :type close_callbacks: A list of function()
          :param close_callbacks: Called when close is called. The function
              should take no arguments.
function: def __init__(self, fileobj, chunk_size, full_file_size,
                   callbacks=None, enable_callbacks=True, close_callbacks=None):
          """
  
          Given a file object shown below::
  
              |___________________________________________________|
              0          |                 |                 full_file_size
                         |----chunk_size---|
                      f.tell()
  
          :type fileobj: file
          :param fileobj: File like object
  
          :type chunk_size: int
          :param chunk_size: The max chunk size to read.  Trying to read
              pass the end of the chunk size will behave like you've
              reached the end of the file.
  
          :type full_file_size: int
          :param full_file_size: The entire content length associated
              with ``fileobj``.
  
          :type callbacks: A list of function(amount_read)
          :param callbacks: Called whenever data is read from this object in the
              order provided.
  
          :type enable_callbacks: boolean
          :param enable_callbacks: True if to run callbacks. Otherwise, do not
              run callbacks
  
          :type close_callbacks: A list of function()
          :param close_callbacks: Called when close is called. The function
              should take no arguments.
          """
          self._fileobj = fileobj
          self._start_byte = self._fileobj.tell()
          self._size = self._calculate_file_size(
              self._fileobj, requested_size=chunk_size,
              start_byte=self._start_byte, actual_file_size=full_file_size)
          self._amount_read = 0
          self._callbacks = callbacks
          if callbacks is None:
              self._callbacks = []
          self._callbacks_enabled = enable_callbacks
          self._close_callbacks = close_callbacks
          if close_callbacks is None:
              self._close_callbacks = close_callbacks
function_tokens: def __init__ ( self , fileobj , chunk_size , full_file_size , callbacks = None , enable_callbacks = True , close_callbacks = None ) : self . _fileobj = fileobj self . _start_byte = self . _fileobj . tell ( ) self . _size = self . _calculate_file_size ( self . _fileobj , requested_size = chunk_size , start_byte = self . _start_byte , actual_file_size = full_file_size ) self . _amount_read = 0 self . _callbacks = callbacks if callbacks is None : self . _callbacks = [ ] self . _callbacks_enabled = enable_callbacks self . _close_callbacks = close_callbacks if close_callbacks is None : self . _close_callbacks = close_callbacks