Class: String

Inherits:
Object
  • Object
show all
Defined in:
lib/availablizer.rb

Instance Method Summary collapse

Instance Method Details

#availablizeObject



6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
# File 'lib/availablizer.rb', line 6

def availablize
  as_is = %w(like peace scare)
  ibles = %w(access collapse compat defense fall sense insense response reverse suggest contempt convert flex gull terrify horrify plausible)

  if ibles.include? self
    suffix = 'ible'
  else
    suffix = 'able'
  end

  if self == 'navigate'
    'navigable'
  elsif self[-2..-1] == 'et'
    self + 't' + suffix
  elsif self[-1] == 'e'
    if suffix == 'ible'
      self[0..-2] + suffix
    elsif as_is.include? self
      self + suffix
    else
      self + 'ble'
    end
  elsif self[-2..-1] == 'fy'
    if suffix == 'ible'
      self.gsub(/ify$/, suffix)
    else
      self.gsub(/fy$/, 'fi') + suffix
    end
  else
    self.gsub(/y$/, 'iz') + suffix
  end
end