Module: Jeny::Caser
- Defined in:
- lib/jeny/caser.rb
Class Method Summary collapse
- .camel(src) ⇒ Object
- .cobol(src) ⇒ Object
- .constant(src) ⇒ Object
- .donner(src) ⇒ Object
- .flat(src) ⇒ Object
- .for_hash(hash) ⇒ Object
- .gen_parts(src) ⇒ Object
- .header(src) ⇒ Object
- .kebab(src) ⇒ Object
- .macro(src) ⇒ Object
- .pascal(src) ⇒ Object
- .screaming(src) ⇒ Object
- .snake(src) ⇒ Object
- .train(src) ⇒ Object
- .underscore(src) ⇒ Object
- .upper(src) ⇒ Object
- .upperflat(src) ⇒ Object
Class Method Details
.camel(src) ⇒ Object
71 72 73 74 |
# File 'lib/jeny/caser.rb', line 71 def camel(src) parts = gen_parts(src) unless src.is_a?(Array) parts.first + parts[1..-1].map(&:capitalize).join end |
.cobol(src) ⇒ Object
100 101 102 103 |
# File 'lib/jeny/caser.rb', line 100 def cobol(src) parts = gen_parts(src) unless src.is_a?(Array) parts.map(&:upcase).join("-") end |
.constant(src) ⇒ Object
55 56 57 |
# File 'lib/jeny/caser.rb', line 55 def constant(src) screaming(src) end |
.donner(src) ⇒ Object
106 107 108 109 |
# File 'lib/jeny/caser.rb', line 106 def donner(src) parts = gen_parts(src) unless src.is_a?(Array) parts.join("|") end |
.flat(src) ⇒ Object
26 27 28 29 |
# File 'lib/jeny/caser.rb', line 26 def flat(src) parts = gen_parts(src) unless src.is_a?(Array) parts.join end |
.for_hash(hash) ⇒ Object
4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 |
# File 'lib/jeny/caser.rb', line 4 def self.for_hash(hash) hash.each_pair.each_with_object({}) do |(k,v),memo| case v when String Caser.methods(false).each do |m| next if m == :for_hash or m == :gen_parts memo[Caser.send(m, k)] = Caser.send(m, v) end when Hash memo[k] = for_hash(v) when Array memo[k] = v.map{|x| for_hash(x) } else v end end end |
.gen_parts(src) ⇒ Object
22 23 24 |
# File 'lib/jeny/caser.rb', line 22 def self.gen_parts(src) src.split(/[ -_]/) end |
.header(src) ⇒ Object
95 96 97 |
# File 'lib/jeny/caser.rb', line 95 def header(src) train(src) end |
.kebab(src) ⇒ Object
83 84 85 86 |
# File 'lib/jeny/caser.rb', line 83 def kebab(src) parts = gen_parts(src) unless src.is_a?(Array) parts.join("-") end |
.macro(src) ⇒ Object
50 51 52 |
# File 'lib/jeny/caser.rb', line 50 def macro(src) screaming(src) end |
.pascal(src) ⇒ Object
77 78 79 80 |
# File 'lib/jeny/caser.rb', line 77 def pascal(src) parts = gen_parts(src) unless src.is_a?(Array) parts.map(&:capitalize).join end |
.screaming(src) ⇒ Object
44 45 46 47 |
# File 'lib/jeny/caser.rb', line 44 def screaming(src) parts = gen_parts(src) unless src.is_a?(Array) parts.map(&:upcase).join("_") end |
.snake(src) ⇒ Object
66 67 68 |
# File 'lib/jeny/caser.rb', line 66 def snake(src) underscore(src) end |
.train(src) ⇒ Object
89 90 91 92 |
# File 'lib/jeny/caser.rb', line 89 def train(src) parts = gen_parts(src) unless src.is_a?(Array) parts.map(&:capitalize).join("-") end |
.underscore(src) ⇒ Object
60 61 62 63 |
# File 'lib/jeny/caser.rb', line 60 def underscore(src) parts = gen_parts(src) unless src.is_a?(Array) parts.join("_") end |
.upper(src) ⇒ Object
32 33 34 35 |
# File 'lib/jeny/caser.rb', line 32 def upper(src) parts = gen_parts(src) unless src.is_a?(Array) parts.map(&:upcase).join(" ") end |
.upperflat(src) ⇒ Object
38 39 40 41 |
# File 'lib/jeny/caser.rb', line 38 def upperflat(src) parts = gen_parts(src) unless src.is_a?(Array) parts.map(&:upcase).join end |