class Chef::Node::AttrArray

AttrArray

AttrArray is identical to Array, except that it keeps a reference to the “root” (Chef::Node::Attribute) object, and will trigger a cache invalidation on that object when mutated.

Constants

MUTATOR_METHODS

Attributes

root[R]

Public Class Methods

new(root, data) click to toggle source
Calls superclass method
# File lib/chef/node/attribute_collections.rb, line 74
def initialize(root, data)
  @root = root
  super(data)
end

Public Instance Methods

dup() click to toggle source
# File lib/chef/node/attribute_collections.rb, line 86
def dup
  Array.new(map {|e| safe_dup(e)})
end
safe_dup(e) click to toggle source

For elements like Fixnums, true, nil…

# File lib/chef/node/attribute_collections.rb, line 80
def safe_dup(e)
  e.dup
rescue TypeError
  e
end