class_docstr: Represents the source code directory and provide the utilities to manage it.
class_docstr_tok: ["Represents","the","source","code","directory","and","provide","the","utilities","to","manage","it","."]
docstr: Returns a set of files that are not ignored by .lightningignore.
docstr_tok: ["Returns","a","set","of","files","that","are","not","ignored","by",".lightningignore","."]
code: def files(self) -> List[str]:
      """Returns a set of files that are not ignored by .lightningignore."""
      if self._non_ignored_files is None:
          if self.package_source:
              self._non_ignored_files = _copytree(
                  self.path,
                  "",
                  ignore_functions=self.ignore_functions,
                  dry_run=True,
              )
          else:
              self._non_ignored_files = []
      return self._non_ignored_files
  
file_path: pytorch-lightning/src/lightning/app/source_code/local.py
imports: import os
  import uuid
  from contextlib import contextmanager
  from pathlib import Path
  from shutil import copytree, rmtree
  from typing import List, Optional
  from lightning.app.core.constants import DOT_IGNORE_FILENAME, SYS_CUSTOMIZATIONS_SYNC_PATH
  from lightning.app.source_code.copytree import _IGNORE_FUNCTION, _copytree
  from lightning.app.source_code.tar import _tar_path
  from lightning.app.source_code.uploader import FileUploader
label_desc: Use image node_id 2 for calling the LocalSourceCodeDir obj's underlying member method code with example usage: obj.files() and returns: self