Update stdlib and concat to 6.1.0 both
[mirror/dsa-puppet.git] / 3rdparty / modules / stdlib / lib / puppet / parser / functions / pick.rb
index fdd0aef..e31dc95 100644 (file)
@@ -1,29 +1,32 @@
+#
+# pick.rb
+#
 module Puppet::Parser::Functions
- newfunction(:pick, :type => :rvalue, :doc => <<-EOS
+  newfunction(:pick, :type => :rvalue, :doc => <<-EOS
+    @summary
+      This function is similar to a coalesce function in SQL in that it will return
+      the first value in a list of values that is not undefined or an empty string.
 
-This function is similar to a coalesce function in SQL in that it will return
-the first value in a list of values that is not undefined or an empty string
-(two things in Puppet that will return a boolean false value). Typically,
-this function is used to check for a value in the Puppet Dashboard/Enterprise
-Console, and failover to a default value like the following:
+    @return
+      the first value in a list of values that is not undefined or an empty string.
 
-  $real_jenkins_version = pick($::jenkins_version, '1.449')
+    Typically, this function is used to check for a value in the Puppet
+    Dashboard/Enterprise Console, and failover to a default value like the following:
 
-The value of $real_jenkins_version will first look for a top-scope variable
-called 'jenkins_version' (note that parameters set in the Puppet Dashboard/
-Enterprise Console are brought into Puppet as top-scope variables), and,
-failing that, will use a default value of 1.449.
+    ```$real_jenkins_version = pick($::jenkins_version, '1.449')```
 
-EOS
-) do |args|
-   args = args.compact
-   args.delete(:undef)
-   args.delete(:undefined)
-   args.delete("")
-   if args[0].to_s.empty? then
-     fail Puppet::ParseError, "pick(): must receive at least one non empty value"
-   else
-     return args[0]
-   end
- end
+    > *Note:*
+      The value of $real_jenkins_version will first look for a top-scope variable
+      called 'jenkins_version' (note that parameters set in the Puppet Dashboard/
+      Enterprise Console are brought into Puppet as top-scope variables), and,
+      failing that, will use a default value of 1.449.
+  EOS
+             ) do |args|
+    args = args.compact
+    args.delete(:undef)
+    args.delete(:undefined)
+    args.delete('')
+    raise Puppet::ParseError, 'pick(): must receive at least one non empty value' if args[0].to_s.empty?
+    return args[0]
+  end
 end