code: def _name_get(dtype):
      # provides dtype.name.__get__
  
      if dtype.isbuiltin == 2:
          # user dtypes don't promise to do anything special
          return dtype.type.__name__
  
      # Builtin classes are documented as returning a "bit name"
      name = dtype.type.__name__
  
      # handle bool_, str_, etc
      if name[-1] == "_":
          name = name[:-1]
  
      # append bit counts to str, unicode, and void
      if np.issubdtype(dtype, np.flexible) and not _isunsized(dtype):
          name += "{}".format(dtype.itemsize * 8)
  
      # append metadata to datetimes
      elif dtype.type in (np.datetime64, np.timedelta64):
          name += _datetime_metadata_str(dtype)
  
      return name
  
file_path: catboost/contrib/python/numpy/py2/numpy/core/_dtype.py
imports: from __future__ import division, absolute_import, print_function
  import sys
  import numpy
label_desc: Use image node_id 15 for calling a global function with example usage: _name_get(dtype) and returns: name, dtype