class Endymion::Util
Public Class Methods
bind(name, value) { || ... }
click to toggle source
# File lib/endymion/util.rb, line 43 def bind(name, value) old_value = Thread.current[name] begin Thread.current[name] = value yield ensure Thread.current[name] = old_value end end
camel_case(str)
click to toggle source
# File lib/endymion/util.rb, line 6 def camel_case(str) cameled = str.gsub(/[_| |\-][A-Za-z]/) { |a| a[1..-1].upcase } if str uncapitalize(cameled) end
capitalize(str)
click to toggle source
# File lib/endymion/util.rb, line 19 def capitalize(str) do_to_first(str) do |first_letter| first_letter.upcase end end
class_name(str)
click to toggle source
# File lib/endymion/util.rb, line 11 def class_name(str) capitalize(camel_case(str)) end
do_to_first(str) { |str| ... }
click to toggle source
# File lib/endymion/util.rb, line 31 def do_to_first(str) if str first = yield(str[0, 1]) if str.length > 1 last = str[1..-1] first + last else first end end end
snake_case(str)
click to toggle source
# File lib/endymion/util.rb, line 15 def snake_case(str) str.gsub(/([a-z0-9])([A-Z])/, '\1 \2').downcase.gsub(/[ |\-]/, '_') if str end
uncapitalize(str)
click to toggle source
# File lib/endymion/util.rb, line 25 def uncapitalize(str) do_to_first(str) do |first_letter| first_letter.downcase end end