Class: ActiveSupport::StringInquirer

Inherits:
String show all
Defined in:
lib/active_support/string_inquirer.rb

Overview

Wrapping a string in this class gives you a prettier way to test for equality. The value returned by Rails.env is wrapped in a StringInquirer object so instead of calling this:

Rails.env == "production"

you can call this:

Rails.env.production?

Instance Method Summary collapse

Methods inherited from String

#as_json, #as_str, #blank?, #html_safe, #html_safe?, #to_json, #to_xs

Methods included from CoreExtensions::String::Multibyte

#chars, #is_utf8?, #mb_chars

Methods included from CoreExtensions::String::Behavior

#acts_like_string?

Methods included from CoreExtensions::String::Iterators

append_features, #each_char

Methods included from CoreExtensions::String::StartsEndsWith

append_features, #ends_with?, #starts_with?

Methods included from CoreExtensions::String::Inflections

#camelize, #classify, #constantize, #dasherize, #demodulize, #foreign_key, #humanize, #parameterize, #pluralize, #singularize, #tableize, #titleize, #underscore

Methods included from CoreExtensions::String::Filters

#squish, #squish!

Methods included from CoreExtensions::String::Conversions

#ord, #to_date, #to_datetime, #to_time

Methods included from CoreExtensions::String::Access

#at, #first, #from, #last, #to

Dynamic Method Handling

This class handles dynamic methods through the method_missing method

#method_missing(method_name, *arguments) ⇒ Object



13
14
15
16
17
18
19
# File 'lib/active_support/string_inquirer.rb', line 13

def method_missing(method_name, *arguments)
  if method_name.to_s[-1,1] == "?"
    self == method_name.to_s[0..-2]
  else
    super
  end
end