Sha256: 2afcfa7550e83ba50aef7adf4c4bc9ea034d85a87a451244b649468109adb725
Contents?: true
Size: 748 Bytes
Versions: 2
Compression:
Stored size: 748 Bytes
Contents
# frozen_string_literal: true class Inflector CAMEL_REGEX = /(_[a-zA-Z])/.freeze UNDERSCORE_REGEX = /(.)([A-Z])/.freeze class << self def camel(term) return term.capitalize! unless term.include?('_') term.capitalize! term.gsub!(CAMEL_REGEX) { Regexp.last_match(1).delete('_').upcase! } end def camel_lower(term) return term unless term.include?('_') term.gsub!(CAMEL_REGEX) { Regexp.last_match(1).delete('_').upcase! } end def underscore(camel_cased_word) camel_cased_word.gsub!(UNDERSCORE_REGEX, '\1_\2') camel_cased_word.downcase! camel_cased_word end def dash(underscored_word) underscored_word.tr!('_', '-') underscored_word end end end
Version data entries
2 entries across 2 versions & 1 rubygems
Version | Path |
---|---|
bright_serializer-0.1.1 | lib/bright_serializer/inflector.rb |
bright_serializer-0.1.0 | lib/bright_serializer/inflector.rb |