def camelize(term, uppercase_first_letter = true)
      string = term.to_s
      if uppercase_first_letter
        string = string.sub(/^[a-z\d]*/) { |match| inflections.acronyms[match] || match.capitalize }
      else
        string = string.sub(inflections.acronyms_camelize_regex) { |match| match.downcase }
      end
      string.gsub!(/(?:_|(\/))([a-z\d]*)/i) { "#{$1}#{inflections.acronyms[$2] || $2.capitalize}" }
      string.gsub!("/", "::")
      string
    end
def camelize(term, uppercase_first_letter = true)
      string = term.to_s
      if uppercase_first_letter
        string = string.sub(/^[a-z\d]*/) { |match| inflections.acronyms[match] || match.capitalize }
      else
        string = string.sub(inflections.acronyms_camelize_regex) { |match| match.downcase }
      end
      string.gsub!(/(?:_|(\/))([a-z\d]*)/i) { "#{$1}#{inflections.acronyms[$2] || $2.capitalize}" }
      string.gsub!("/", "::")
      string
    end
Converts strings to UpperCamelCase.
 If the +uppercase_first_letter+ parameter is set to false, then produces
 lowerCamelCase.

 Also converts '/' to '::' which is useful for converting
 paths to namespaces.

   camelize('active_model')                # => "ActiveModel"
   camelize('active_model', false)         # => "activeModel"
   camelize('active_model/errors')         # => "ActiveModel::Errors"
   camelize('active_model/errors', false)  # => "activeModel::Errors"

 As a rule of thumb you can think of +camelize+ as the inverse of
 #underscore, though there are cases where that does not hold:

   camelize(underscore('SSLError'))        # => "SslError"