class_docstr: Checkpoint manager that handles checkpoint book-keeping for a trial.
  
  The main purpose of this abstraction is to keep the top K checkpoints based on
  recency/a user-provided metric.
  
  NOTE: This class interacts with `_TrainingResult` objects, which are
  (checkpoint, metrics) pairs. This is to order checkpoints by metrics.
  
  Args:
      checkpoint_config: Defines how many and which checkpoints to keep.
class_docstr_tok: ["Checkpoint","manager","that","handles","checkpoint","book-keeping","for","a","trial",".","The","main","purpose","of","this","abstraction","is","to","keep","the","top","K","checkpoints","based","on","recency\/a","user-provided","metric",".","NOTE",":","This","class","interacts","with","`","_TrainingResult","`","objects",",","which","are","(","checkpoint",",","metrics",")","pairs",".","This","is","to","order","checkpoints","by","metrics",".","Args",":","checkpoint_config",":","Defines","how","many","and","which","checkpoints","to","keep","."]
code: def latest_checkpoint_result(self) -> Optional[_TrainingResult]:
      return self._latest_checkpoint_result
  
file_path: ray/python/ray/train/_internal/checkpoint_manager.py
imports: import logging
  import numbers
  from typing import Any, Callable, List, Optional, Tuple
  from ray._private.dict import flatten_dict
  from ray.air._internal.util import is_nan
  from ray.air.config import MAX
  from ray.train import CheckpointConfig
  from ray.train._internal.session import _TrainingResult
  from ray.train._internal.storage import _delete_fs_path
label_desc: Use image node_id 6 for calling the _CheckpointManager obj's underlying member method code with example usage: obj.latest_checkpoint_result() and returns: self