Class: ActiveSupport::Inflector::Inflections::Uncountables
Relationships & Source Files | |
Super Chains via Extension / Inclusion / Inheritance | |
Class Chain:
self,
::Array
|
|
Instance Chain:
self,
::Array
|
|
Inherits: | Array |
Defined in: | activesupport/lib/active_support/inflector/inflections.rb |
Class Method Summary
- .new ⇒ Uncountables constructor
::Array
- Inherited
.wrap | Wraps its argument in an array unless it is already an array (or array-like). |
Instance Attribute Summary
Instance Method Summary
::Array
- Inherited
#blank? | An array is blank if it’s empty: |
#deep_dup | Returns a deep copy of array. |
#excluding | Returns a copy of the |
#extract! | Removes and returns the elements for which the block returns a true value. |
#extract_options! | Extracts options from a set of arguments. |
#fifth | Equal to |
#forty_two | Equal to |
#fourth | Equal to |
#from | Returns the tail of the array from |
#in_groups | Splits or iterates over the array in |
#in_groups_of | Splits or iterates over the array in groups of size |
#including | Returns a new array that includes the passed elements. |
#inquiry | Wraps the array in an |
#second | Equal to |
#second_to_last | Equal to |
#split | Divides the array into one or more subarrays based on a delimiting |
#third | Equal to |
#third_to_last | Equal to |
#to | Returns the beginning of the array up to |
#to_formatted_s | Alias for Array#to_fs. |
#to_fs | Extends |
#to_param | Calls |
#to_query | Converts an array into a string suitable for use as a URL query string, using the given |
#to_sentence | Converts the array to a comma-separated sentence where the last element is joined by the connector word. |
#to_xml | Returns a string that represents the array in XML by invoking |
#without | Alias for Array#excluding. |
#as_json, | |
#compact_blank! | Removes all blank elements from the |
Constructor Details
.new ⇒ Uncountables
# File 'activesupport/lib/active_support/inflector/inflections.rb', line 34
def initialize @regex_array = [] super end
Instance Method Details
#<<(*word)
[ GitHub ]# File 'activesupport/lib/active_support/inflector/inflections.rb', line 44
def <<(*word) add(word) end
#add(words)
[ GitHub ]# File 'activesupport/lib/active_support/inflector/inflections.rb', line 48
def add(words) words = words.flatten.map(&:downcase) concat(words) @regex_array += words.map { |word| to_regex(word) } self end
#delete(entry)
[ GitHub ]# File 'activesupport/lib/active_support/inflector/inflections.rb', line 39
def delete(entry) super entry @regex_array.delete(to_regex(entry)) end
#to_regex(string) (private)
[ GitHub ]# File 'activesupport/lib/active_support/inflector/inflections.rb', line 60
def to_regex(string) /\b#{::Regexp.escape(string)}\Z/i end
#uncountable?(str) ⇒ Boolean
# File 'activesupport/lib/active_support/inflector/inflections.rb', line 55
def uncountable?(str) @regex_array.any? { |regex| regex.match? str } end