code: def _handle_arg_type(arg, param):
      if isinstance(arg.type, Hashable) and arg.type in PY_TYPES:
          param["type"] = PY_TYPES[arg.type]
      elif hasattr(arg.type, "__apidoc__"):
          param["type"] = arg.type.__apidoc__["name"]
          param["in"] = "body"
      elif hasattr(arg.type, "__schema__"):
          param.update(arg.type.__schema__)
      elif arg.location == "files":
          param["type"] = "file"
      else:
          param["type"] = "string"
  
imports: from __future__ import unicode_literals
  import decimal
  import six
  from copy import deepcopy
  from flask import current_app, request
  from werkzeug.datastructures import MultiDict, FileStorage
  from werkzeug import exceptions
  from .errors import abort, SpecsError
  from .marshalling import marshal
  from .model import Model
  from ._http import HTTPStatus
label_desc: Use image node_id 1 for calling a global function with example usage: _handle_arg_type(arg, param) without return types