class Shaf::Yard::LinkMethodHandler

Handles call to Shaf::Serializer::link

Public Instance Methods

curie() click to toggle source
# File lib/shaf/yard/link_method_handler.rb, line 23
def curie
  m = name.match(/([^:]+):/)
  return m[1] if m

  statement.parameters(false).each do |param|
    next unless param&.respond_to? :source

    str = String(param.source)
    m = str.match(/curie:\s:?(\w+)/)
    return m[1] if m
  end

  nil
end
name() click to toggle source
Calls superclass method Shaf::Yard::BaseMethodHandler#name
# File lib/shaf/yard/link_method_handler.rb, line 19
def name
  super.sub(/[^:]+:/, '')
end
object() click to toggle source
# File lib/shaf/yard/link_method_handler.rb, line 11
def object
  LinkObject.new(serializer_namespace, name).tap do |link|
    link.dynamic = true
    link.rel = name
    link.curie = curie
  end
end