code: def input_dir(self, dirname):
          
          dirname = dirname.rstrip('/')
          if self.excluded(dirname):
              return 0
          counters = self.options.report.counters
          verbose = self.options.verbose
          filepatterns = self.options.filename
          runner = self.runner
          for root, dirs, files in os.walk(dirname):
              if verbose:
                  print('directory ' + root)
              counters['directories'] += 1
              for subdir in sorted(dirs):
                  if self.excluded(subdir, root):
                      dirs.remove(subdir)
              for filename in sorted(files):
                  # contain a pattern that matches?
                  if ((filename_match(filename, filepatterns) and
                       not self.excluded(filename, root))):
                      runner(os.path.join(root, filename))
docs: Check all files in this directory and all subdirectories.