1 2 3 4 5 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
|
unless String.method_defined? :delete_suffix
require 'backports/tools/arguments'
class String
def delete_suffix(suffix)
suffix = Backports.coerce_to_str(suffix)
len = suffix.length
if len > 0 && index(suffix, -len)
self[0...-len]
else
dup
end
end
end
end
unless String.method_defined? :delete_suffix!
require 'backports/tools/arguments'
class String
def delete_suffix!(suffix)
suffix = Backports.coerce_to_str(suffix)
chomp! if frozen?
len = suffix.length
if len > 0 && index(suffix, -len)
self[-len..-1] = ''
self
else
nil
end
end
end
end
|