source: other-projects/hathitrust/vagrant-hadoop-cluster/trunk/modules/stdlib/lib/puppet/parser/functions/empty.rb@ 30903

Last change on this file since 30903 was 30903, checked in by davidb, 7 years ago

Vagrant provisioning files for a 4-node Hadoop cluster. See README.txt for more details

File size: 705 bytes
Line 
1#
2# empty.rb
3#
4
5module Puppet::Parser::Functions
6 newfunction(:empty, :type => :rvalue, :doc => <<-EOS
7Returns true if the variable is empty.
8 EOS
9 ) do |arguments|
10
11 raise(Puppet::ParseError, "empty(): Wrong number of arguments " +
12 "given (#{arguments.size} for 1)") if arguments.size < 1
13
14 value = arguments[0]
15
16 unless value.is_a?(Array) || value.is_a?(Hash) || value.is_a?(String) || value.is_a?(Numeric)
17 raise(Puppet::ParseError, 'empty(): Requires either ' +
18 'array, hash, string or integer to work with')
19 end
20
21 if value.is_a?(Numeric)
22 return false
23 else
24 result = value.empty?
25
26 return result
27 end
28 end
29end
30
31# vim: set ts=2 sw=2 et :
Note: See TracBrowser for help on using the repository browser.