Class: ActiveSupport::StringInquirer
| Relationships & Source Files | |
| Extension / Inclusion / Inheritance Descendants | |
|
Subclasses:
|
|
| Super Chains via Extension / Inclusion / Inheritance | |
|
Class Chain:
self,
::String
|
|
|
Instance Chain:
self,
::String
|
|
| Inherits: | String |
| Defined in: | activesupport/lib/active_support/string_inquirer.rb |
Overview
String Inquirer
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?
Instantiating a new StringInquirer
vehicle = ActiveSupport::StringInquirer.new('car')
vehicle.car? # => true
vehicle.bike? # => false
Constant Summary
::String - Inherited
Instance Attribute Summary
::String - Inherited
| #acts_like_string? | Enables more predictable duck-typing on String-like classes. |
| #blank? | A string is blank if it’s empty or contains whitespaces only: |
| #is_utf8? | Returns |
| #present? | |
Instance Method Summary
- #method_missing(method_name) private
- #respond_to_missing?(method_name, include_private = false) ⇒ Boolean private
::String - Inherited
| #at | If you pass a single integer, returns a substring of one character at that position. |
| #camelcase | Alias for String#camelize. |
| #camelize | By default, |
| #classify | Creates a class name from a plural table name like Rails does for table names to models. |
| #constantize |
|
| #dasherize | Replaces underscores with dashes in the string. |
| #deconstantize | Removes the rightmost segment from the constant expression in the string. |
| #demodulize | Removes the module part from the constant expression in the string. |
| #downcase_first | Converts the first character to lowercase. |
| #ends_with?, | |
| #exclude? | The inverse of |
| #first | Returns the first character. |
| #foreign_key | Creates a foreign key name from a class name. |
| #from | Returns a substring from the given position to the end of the string. |
| #html_safe | Marks a string as trusted safe. |
| #humanize | Capitalizes the first word, turns underscores into spaces, and (by default) strips a trailing ‘_id’ if present. |
| #in_time_zone | Converts String to a |
| #indent | Indents the lines in the receiver: |
| #indent! | Same as |
| #inquiry | Wraps the current string in the |
| #last | Returns the last character of the string. |
| #mb_chars |
|
| #parameterize | Replaces special characters in a string so that it may be used as part of a ‘pretty’ URL. |
| #pluralize | Returns the plural form of the word in the string. |
| #remove | Returns a new string with all occurrences of the patterns removed. |
| #remove! | Alters the string by removing all occurrences of the patterns. |
| #safe_constantize |
|
| #singularize | The reverse of |
| #squish | Returns the string, first removing all whitespace on both ends of the string, and then changing remaining consecutive whitespace groups into one space each. |
| #squish! | Performs a destructive squish. |
| #starts_with?, | |
| #strip_heredoc | Strips indentation in heredocs. |
| #tableize | Creates the name of a table like Rails does for models to table names. |
| #titlecase | Alias for String#titleize. |
| #titleize | Capitalizes all the words and replaces some characters in the string to create a nicer looking title. |
| #to | Returns a substring from the beginning of the string to the given position. |
| #to_date | Converts a string to a |
| #to_datetime | Converts a string to a |
| #to_time | Converts a string to a |
| #truncate | Truncates a given |
| #truncate_bytes | Truncates |
| #truncate_words | Truncates a given |
| #underscore | The reverse of |
| #upcase_first | Converts the first character to uppercase. |
| #as_json | |
Dynamic Method Handling
This class handles dynamic methods through the method_missing method
#method_missing(method_name) (private)
[ GitHub ]# File 'activesupport/lib/active_support/string_inquirer.rb', line 27
def method_missing(method_name, ...) if method_name.end_with?("?") self == method_name[0..-2] else super end end
Instance Method Details
#respond_to_missing?(method_name, include_private = false) ⇒ Boolean (private)
# File 'activesupport/lib/active_support/string_inquirer.rb', line 23
def respond_to_missing?(method_name, include_private = false) method_name.end_with?("?") || super end