Module: Shaf::MethodBuilder

Defined in:
lib/shaf/extensions/resource_uris.rb

Class Method Summary collapse

Class Method Details

.as_string(name, uri) ⇒ Object



123
124
125
126
127
128
129
130
# File 'lib/shaf/extensions/resource_uris.rb', line 123

def as_string(name, uri)
  signature = signature(name, uri)
  <<~EOM
def #{signature}
  \"#{interpolated_uri_string(uri)}\".freeze
end
  EOM
end

.method_name(name) ⇒ Object



112
113
114
# File 'lib/shaf/extensions/resource_uris.rb', line 112

def method_name(name)
  "#{name}_uri"
end

.signature(name, uri) ⇒ Object



116
117
118
119
120
121
# File 'lib/shaf/extensions/resource_uris.rb', line 116

def signature(name, uri)
  args = extract_symbols(uri)
  s = method_name(name)
  s << "(#{args.join(', ')})" unless args.empty?
  s
end