code: def __cast_arg(cls, arg, dtype=None):
      if arg is None or callable(arg):
          return ""
      # If this an instance, just store the type
      if str(hex(id(arg))) in str(arg):
          return str(type(arg))
      if dtype in (float, int) and isinstance(arg, list):
          return [None if a is None else dtype(a) for a in arg]
      return arg
  
imports: import yaml
  from enum import Enum
  from inspect import isfunction
  from six import PY2
  from argparse import _StoreAction, ArgumentError, _StoreConstAction, _SubParsersAction, _AppendAction, SUPPRESS
  from copy import copy
  from typing import Tuple, Type, Union
  from ...backend_api import Session
  from ...binding.args import call_original_argparser
  from ...utilities.proxy_object import get_type_from_basic_type_str
label_desc: Use image node_id 15 for calling the _Arguments obj's underlying member method code with example usage: obj.__cast_arg(cls, arg, dtype) and returns: arg, str, str, unknown