class PayPal::SDK::Core::API::DataTypes::ArrayWithBlock
Create Array with block.
Example¶ ↑
ary = ArrayWithBlock.new{|val| val.to_i } ary.push("123") # [ 123 ] ary.merge!(["1", "3"]) # [ 123, 1, 3 ]
Public Class Methods
new(&block)
click to toggle source
Calls superclass method
# File lib/paypal-sdk/core/api/data_types/array_with_block.rb, line 10 def initialize(&block) @block = block super() end
Public Instance Methods
[](key)
click to toggle source
Calls superclass method
# File lib/paypal-sdk/core/api/data_types/array_with_block.rb, line 15 def [](key) super(key) || send(:"[]=", key, nil) end
[]=(key, value)
click to toggle source
Calls superclass method
# File lib/paypal-sdk/core/api/data_types/array_with_block.rb, line 19 def []=(key, value) super(key, @block ? @block.call(value) : value) end
merge!(array)
click to toggle source
# File lib/paypal-sdk/core/api/data_types/array_with_block.rb, line 27 def merge!(array) if array.is_a? Array array.each do |object| push(object) end elsif array.is_a? Hash and array.keys.first.to_s =~ /^\d+$/ array.each do |key, object| self[key.to_i] = object end else push(array) end self end
push(value)
click to toggle source
Calls superclass method
# File lib/paypal-sdk/core/api/data_types/array_with_block.rb, line 23 def push(value) super(@block ? @block.call(value) : value) end