class_docstr: Base class for defining arms.
  
  Randomization in experiments assigns units to a given arm. Thus, the arm
  encapsulates the parametrization needed by the unit.
docstr: Get arm name. Throws if name is None.
docstr_tok: ["Get","arm","name",".","Throws","if","name","is","None","."]
code: def name(self) -> str:
      """Get arm name. Throws if name is None."""
      if self._name is None:
          raise ValueError("Arm's name is None.")
      return self._name
  
imports: import hashlib
  import json
  from typing import Optional
  from ax.core.types import TParameterization
  from ax.utils.common.base import SortableBase
  from ax.utils.common.equality import equality_typechecker
  from ax.utils.common.typeutils import numpy_type_to_python_type
label_desc: Use image node_id 4 for calling the Arm obj's underlying member method code with example usage: obj.name() and returns: self