# File lib/wsdl/soap/classNameCreator.rb, line 24
  def assign_name(qname, modulepath = nil)
    key = [modulepath, qname]
    unless @classname.key?(key)
      if klass = ::SOAP::TypeMap[qname]
        name =
          ::SOAP::Mapping::DefaultRegistry.find_mapped_obj_class(klass).name
      else
        name = safeconstname(qname.name)
        if modulepath
          name = [modulepath, name].join('::')
        end
        while @classname.value?(name)
          name += '_'
        end
        check_classname(name)
      end
      @classname[key] = name.freeze
    end
    @classname[key]
  end