method

attribute_method_patterns_cache

attribute_method_patterns_cache()
private

The methods method_missing and respond_to? of this module are invoked often in a typical rails, both of which invoke the method matched_attribute_method. The latter method iterates through an array doing regular expression matches, which results in a lot of object creations. Most of the time it returns a nil match. As the match result is always the same given a method_name, this cache is used to alleviate the GC, which ultimately also speeds up the app significantly (in our case our test suite finishes 10% faster with this cache).