class_docstr: State for each phase (train, eval, predict).
  Modified by the framework, read-only for the user.
docstr: Maximum number of steps to train, defined by the user.
docstr_tok: ["Maximum","number","of","steps","to","train",",","defined","by","the","user","."]
code: def max_steps(self) -> Optional[int]:
      """Maximum number of steps to train, defined by the user."""
      return self._max_steps
  
imports: import logging
  from enum import auto, Enum
  from typing import Any, Iterable, Optional
  from torchtnt.utils.timer import BoundedTimer, TimerProtocol
label_desc: Use image node_id 4 for calling the PhaseState obj's underlying member method code with example usage: obj.max_steps() and returns: self