docstr: Return the root directory where experiment logs get saved, or `None` if the logger does not save data
  locally.
docstr_tok: ["Return","the","root","directory","where","experiment","logs","get","saved",",","or","`","None","`","if","the","logger","does","not","save","data","locally","."]
code: def save_dir(self) -> Optional[str]:
      """Return the root directory where experiment logs get saved, or `None` if the logger does not save data
      locally."""
      return None
  
imports: import pickle
  from argparse import Namespace
  from copy import deepcopy
  from typing import Any, Dict, Optional
  from unittest.mock import patch
  import numpy
  import pytest
  import torch
  from lightning.fabric.utilities.logger import _convert_params, _sanitize_params
  from lightning.pytorch import Trainer
  from lightning.pytorch.demos.boring_classes import BoringDataModule, BoringModel
  from lightning.pytorch.loggers import Logger, TensorBoardLogger
  from lightning.pytorch.loggers.logger import DummyExperiment, DummyLogger
  from lightning.pytorch.loggers.utilities import _scan_checkpoints
  from lightning.pytorch.utilities.rank_zero import rank_zero_only
label_desc: Use image node_id 6 for calling the CustomLogger obj's underlying member method code with example usage: obj.save_dir() and returns: None