]> gitweb.fluxo.info Git - puppet-stdlib.git/commitdiff
Need to convert strings and fixnums to arrays
authorMorgan Haskel <morgan@puppetlabs.com>
Fri, 14 Nov 2014 22:33:59 +0000 (14:33 -0800)
committerMorgan Haskel <morgan@puppetlabs.com>
Mon, 17 Nov 2014 20:27:05 +0000 (12:27 -0800)
lib/puppet/parser/functions/member.rb

index bb19a86ce17792d20979adb6978389aee73d7f55..88609ce5fd95ac61128a9cd7ba317080c497712d 100644 (file)
@@ -8,7 +8,7 @@
 module Puppet::Parser::Functions
   newfunction(:member, :type => :rvalue, :doc => <<-EOS
 This function determines if a variable is a member of an array.
-The variable can either be a string or an array.
+The variable can be a string, fixnum, or array.
 
 *Examples:*
 
@@ -39,7 +39,11 @@ would return: false
       raise(Puppet::ParseError, 'member(): Requires array to work with')
     end
 
-    if arguments[1].is_a? String
+    unless arguments[1].is_a? String or arguments[1].is_a? Fixnum or arguments[1].is_a? Array
+      raise(Puppet::ParseError, 'member(): Item to search for must be a string, fixnum, or array')
+    end
+
+    if arguments[1].is_a? String or arguments[1].is_a? Fixnum
       item = Array(arguments[1])
     else
       item = arguments[1]