Sha256: c0b303a7e9d36419d49371a9bc3c9ea6b516998d55c2e90e6b61c78dc61999eb
Contents?: true
Size: 729 Bytes
Versions: 170
Compression:
Stored size: 729 Bytes
Contents
require 'puppet/parser/ast/leaf' class Puppet::Parser::AST class ASTHash < Leaf include Enumerable # Evaluate our children. def evaluate(scope) items = {} @value.each_pair do |k,v| key = k.respond_to?(:safeevaluate) ? k.safeevaluate(scope) : k items.merge!({ key => v.safeevaluate(scope) }) end items end def merge(hash) case hash when ASTHash @value = @value.merge(hash.value) when Hash @value = @value.merge(hash) end end def to_s "{" + @value.collect { |v| v.collect { |a| a.to_s }.join(' => ') }.join(', ') + "}" end def initialize(args) super(args) @value ||= {} end end end
Version data entries
170 entries across 170 versions & 5 rubygems