module Possessify
Constants
- VERSION
Public Instance Methods
non_possessive → new_str
click to toggle source
Returns a new string that is the non-possessive form of str.
"Dave's".non_possessive #=> "Dave" "Xerxes'".non_possessive #=> "Xerxes"
# File lib/possessify/possessify.rb, line 25 def non_possessive if self.possessive? unless self.chomp!("'s") self.chomp!("'") end end self end
non_possessive? → true or false
click to toggle source
Returns true
if str is not in possessive form.
"Dave's".non_possessive? #=> false "Dave".non_possessive? #=> true
# File lib/possessify/possessify.rb, line 52 def non_possessive? !self.possessive? end
possessive → new_str
click to toggle source
Returns a new string that is the possessive form of str.
"Dave".possessive #=> "Dave's" "Xerxes".possessive #=> "Xerxes'"
# File lib/possessify/possessify.rb, line 11 def possessive unless self.possessive? || self.empty? str = self + self.possessive_suffix end str || self end
possessive? → true or false
click to toggle source
Returns true
if str is possessive.
"Dave's".possessive? #=> true "Dave".possessive? #=> false
# File lib/possessify/possessify.rb, line 41 def possessive? self[-2,2] && (self[-2,2].downcase == "'s" || self[-2,2].downcase == "s'") end
possessive_suffix → new_str
click to toggle source
Returns a new string of the possessive suffix regardless of wehether the string is already in possessive form or not.
"Dave's".possessive_suffix #=> "'s" "Dave".possessive_suffix #=> "'s" "Xerxes'".possessive_suffix #=> "'"
# File lib/possessify/possessify.rb, line 65 def possessive_suffix str = self.non_possessive (str[-1,1] && str[-1,1].downcase == "s") ? "'" : "'s" end