Class: String::Words

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

Instance Method Summary collapse

Constructor Details

#initialize(words) ⇒ Words

Returns a new instance of Words.



60
61
62
# File 'lib/activefacts/support.rb', line 60

def initialize words
  @words = words
end

Instance Method Details

#+(words) ⇒ Object



121
122
123
# File 'lib/activefacts/support.rb', line 121

def +(words)
  Words.new(@words + Array(words))
end

#camelcaseObject



103
104
105
# File 'lib/activefacts/support.rb', line 103

def camelcase
  camelwords.join('')
end

#camelwordsObject



92
93
94
95
96
97
98
99
100
101
# File 'lib/activefacts/support.rb', line 92

def camelwords
  count = 0
  @words.map do |word|
	if (count += 1) == 1
	  word
	else
	  word[0].upcase+word[1..-1].downcase
	end
  end
end

#capcaseObject



88
89
90
# File 'lib/activefacts/support.rb', line 88

def capcase
  capwords.join('')
end

#capwordsObject



82
83
84
85
86
# File 'lib/activefacts/support.rb', line 82

def capwords
  @words.map do |word|
	word[0].upcase+word[1..-1]
  end
end

#map(&b) ⇒ Object



64
65
66
# File 'lib/activefacts/support.rb', line 64

def map(&b)
  @words.map(&b)
end

#snakecaseObject



113
114
115
# File 'lib/activefacts/support.rb', line 113

def snakecase
  snakewords.join('_')
end

#snakewordsObject



107
108
109
110
111
# File 'lib/activefacts/support.rb', line 107

def snakewords
  @words.map do |w|
	w.downcase
  end
end

#titlecaseObject



78
79
80
# File 'lib/activefacts/support.rb', line 78

def titlecase
  titlewords.join('')
end

#titlewordsObject



72
73
74
75
76
# File 'lib/activefacts/support.rb', line 72

def titlewords
  @words.map do |word|
	word[0].upcase+word[1..-1].downcase
  end
end

#to_aObject



117
118
119
# File 'lib/activefacts/support.rb', line 117

def to_a
  @words
end

#to_sObject



68
69
70
# File 'lib/activefacts/support.rb', line 68

def to_s
  titlecase
end