code: def drop_all(self):
          ''' Drops all tables from this database '''
          self.drop(self.get_table_names())
          if self.persistent:
              with self._lock:
                  try:
                      dbfolder = os.path.join(self.root_dir, self.name)
                      if os.path.exists(dbfolder) and not os.listdir(dbfolder):
                          rmtree(dbfolder)
                  except (IOError, WindowsError):
                      self._print('Failed to delete folder %s when dropping database' % self.name)
                  finally:
                      del self drop_all(self):
          ''' Drops all tables from this database '''
          self.drop(self.get_table_names())
          if self.persistent:
              with self._lock:
                  try:
                      dbfolder = os.path.join(self.root_dir, self.name)
                      if os.path.exists(dbfolder) and not os.listdir(dbfolder):
                          rmtree(dbfolder)
                  except (IOError, WindowsError):
                      self._print('Failed to delete folder %s when dropping database' % self.name)
                  finally:
                      del self
docs: Drops all tables from this database