def link_object(obj, title = nil, anchor = nil, relative = true)
return title if obj.nil?
obj = Registry.resolve(object, obj, true, true) if obj.is_a?(String)
if title
title = title.to_s
elsif object.is_a?(CodeObjects::Base)
if obj.is_a?(CodeObjects::MethodObject) && obj.scope == :class && obj.parent == object
title = h([object.name, obj.sep, obj.name].join)
elsif obj.title != obj.path
title = h(obj.title)
else
title = h(object.relative_path(obj))
end
else
title = h(obj.title)
end
return title unless serializer
return title if obj.is_a?(CodeObjects::Proxy)
link = url_for(obj, anchor, relative)
link = link ? link_url(link, title, :title => h("#{obj.title} (#{obj.type})")) : title
"<span class='object_link'>" + link + "</span>"
end