Class: String
Instance Method Summary collapse
-
#to_camel! ⇒ Object
Aryk: This might be a better way of writing it.
-
#to_snake! ⇒ Object
no one should change these unless they can benchmark and prove their way is faster.
- #to_title ⇒ Object
Instance Method Details
#to_camel! ⇒ Object
Aryk: This might be a better way of writing it. I made a lightweight version to use in my modifications. Feel free to adapt this to the rest.
15 16 17 18 19 20 21 22 23 24 25 |
# File 'lib/revent/amf3/util/string.rb', line 15 def to_camel! # no one should change these unless they can benchmark and prove their way is faster. =) @cached_camel_strings ||= {} @cached_camel_strings[self] ||= ( # new_string = self.dup # need to do this since sometimes the string is frozen while x = index("_") y=x+1 self[x..y] = self[y..y].capitalize # in my tests, it was faster than upcase end self ) end |
#to_snake! ⇒ Object
no one should change these unless they can benchmark and prove their way is faster. =)
3 4 5 6 7 8 9 10 11 12 |
# File 'lib/revent/amf3/util/string.rb', line 3 def to_snake! # no one should change these unless they can benchmark and prove their way is faster. =) @cached_snake_strings ||= {} @cached_snake_strings[self] ||= ( while x = index(/([a-z\d])([A-Z])/) # unfortunately have to use regex for this one y=x+1 self[x..y] = self[x..x]+"_"+self[y..y].downcase end self ) end |
#to_title ⇒ Object
27 28 29 30 31 |
# File 'lib/revent/amf3/util/string.rb', line 27 def to_title title = self.dup title[0..0] = title[0..0].upcase title end |