parameters: (file_path, output_dir, verbose=True)
docstring: Extracts a zip file using the Python zipfile module.
docstring_summary: Extracts a zip file using the Python zipfile module.
docstring_tokens: Extracts a zip file using the Python zipfile module .
function: def _UnzipUsingZipFile(file_path, output_dir, verbose=True):
    """Extracts a zip file using the Python zipfile module."""
    assert bisect_utils.IsWindowsHost() or bisect_utils.IsMacHost()
    zf = zipfile.ZipFile(file_path)
    for name in zf.namelist():
      if verbose:
        print 'Extracting %s' % name
      zf.extract(name, output_dir)
      if bisect_utils.IsMacHost():
        # Restore file permission bits.
        mode = zf.getinfo(name).external_attr >> 16
        os.chmod(os.path.join(output_dir, name), mode)
function_tokens: def _UnzipUsingZipFile ( file_path , output_dir , verbose = True ) : assert bisect_utils . IsWindowsHost ( ) or bisect_utils . IsMacHost ( ) zf = zipfile . ZipFile ( file_path ) for name in zf . namelist ( ) : if verbose : print 'Extracting %s' % name zf . extract ( name , output_dir ) if bisect_utils . IsMacHost ( ) : # Restore file permission bits. mode = zf . getinfo ( name ) . external_attr >> 16 os . chmod ( os . path . join ( output_dir , name ) , mode )