| Server IP : 77.68.64.21 / Your IP : 216.73.217.59 Web Server : Apache System : Linux hp3-wp-1011352.hostingp3.local 3.10.0-1160.144.1.el7.tuxcare.els9.x86_64 #1 SMP Fri Jul 10 17:06:31 UTC 2026 x86_64 User : csh2516497 ( 2094697) PHP Version : 8.3.30 Disable Function : shell_exec,exec,system,popen,set_time_limit MySQL : OFF | cURL : ON | WGET : ON | Perl : ON | Python : ON | Sudo : ON | Pkexec : ON Directory : /usr/share/ruby/vendor_ruby/puppet/pops/types/ |
Upload File : |
# The Enumeration class provides default Enumerable::Enumerator creation for Puppet Programming Language
# runtime objects that supports the concept of enumeration.
#
class Puppet::Pops::Types::Enumeration
# Produces an Enumerable::Enumerator for Array, Hash, Integer, Integer Range, and String.
#
def self.enumerator(o)
@@singleton ||= new
@@singleton.enumerator(o)
end
# Produces an Enumerator for Array, Hash, Integer, Integer Range, and String.
#
def enumerator(o)
case o
when String
x = o.chars
# Ruby 1.8.7 returns Enumerable::Enumerator, Ruby 1.8.9 Enumerator, and 2.0.0 an Array
x.is_a?(Array) ? x.each : x
when Integer
o.times
when Array
o.each
when Hash
o.each
when Puppet::Pops::Types::PIntegerType
# Not enumerable if representing an infinite range
return nil if o.to.nil? || o.from.nil?
o.each
else
nil
end
end
end