Module: Accessibility::NSArrayCompat
- Included in:
- NSArray
- Defined in:
- lib/ax_elements/nsarray_compat.rb
Overview
An old hack on arrays that allows you to map a single method across
an array of AX::Element objects more succinctly than
Symbol#to_proc
.
I've always been on the fence as to whether this was a good idea or not, but at this point there is too much code written that depends on this and so I will just keep it around for backwards compatability.
Instance Method Summary collapse
-
#method_missing(method, *args) ⇒ Object
If the array contains AX::Element objects and the elements respond to the method name then the method will be mapped across the array.
Dynamic Method Handling
This class handles dynamic methods through the method_missing method
#method_missing(method, *args) ⇒ Object
Debatably bad idea. Maintained for backwards compatibility.
If the array contains AX::Element objects and the elements respond to the method name then the method will be mapped across the array. In this case, you can artificially pluralize the attribute name and the lookup will singularize the method name for you.
31 32 33 34 35 36 37 38 39 |
# File 'lib/ax_elements/nsarray_compat.rb', line 31 def method_missing method, *args smethod = TRANSLATOR.singularize(method.to_s.chomp('?')) map do |x| if !x.kind_of?(AX::Element) then super elsif x.respond_to? method then x.send method, *args else x.send smethod, *args end end end |