aboutsummaryrefslogtreecommitdiff
path: root/lib/puppet/parser/functions
diff options
context:
space:
mode:
authormh <mh@immerda.ch>2011-05-17 21:10:40 +0200
committermh <mh@immerda.ch>2011-05-17 21:13:10 +0200
commit3827e73d67bece1b901d2bb2630a955aa737454c (patch)
tree7d7c2eabac5b60caaa31f655b35410cb7747850a /lib/puppet/parser/functions
parent521bad6447abecbd1780777bfc8c5adb80de42bb (diff)
downloadpuppet-common-3827e73d67bece1b901d2bb2630a955aa737454c.tar.gz
puppet-common-3827e73d67bece1b901d2bb2630a955aa737454c.tar.bz2
add array union function
Diffstat (limited to 'lib/puppet/parser/functions')
-rw-r--r--lib/puppet/parser/functions/array_union.rb10
1 files changed, 10 insertions, 0 deletions
diff --git a/lib/puppet/parser/functions/array_union.rb b/lib/puppet/parser/functions/array_union.rb
new file mode 100644
index 0000000..1ccad3f
--- /dev/null
+++ b/lib/puppet/parser/functions/array_union.rb
@@ -0,0 +1,10 @@
+Puppet::Parser::Functions::newfunction(
+ :array_union,
+ :type => :rvalue,
+ :doc => "Unions two arrays
+
+ Example: array_union(['a','b'],['c']) -> ['a','b','c']"
+) do |args|
+ raise Puppet::ParseError, 'array_union() needs two arguments' if args.length != 2
+ args[0].to_a | args[1].to_a
+end