summaryrefslogtreecommitdiffstats
path: root/lib
diff options
context:
space:
mode:
authorluke <luke@980ebf18-57e1-0310-9a29-db15c13687c0>2006-04-26 16:02:41 +0000
committerluke <luke@980ebf18-57e1-0310-9a29-db15c13687c0>2006-04-26 16:02:41 +0000
commitbaa412c6ed30d19ee43bf37b3bba60bf372fac5a (patch)
tree2f851138572ec687b7e7b116fe415aed4163b542 /lib
parent46ce36b175962ce89e06af4863d2c9dc50f2a02f (diff)
downloadpuppet-baa412c6ed30d19ee43bf37b3bba60bf372fac5a.tar.gz
puppet-baa412c6ed30d19ee43bf37b3bba60bf372fac5a.tar.xz
puppet-baa412c6ed30d19ee43bf37b3bba60bf372fac5a.zip
Adding "defined" functino to puppet, so you can now test whether a given class or definition is defined.
git-svn-id: https://reductivelabs.com/svn/puppet/trunk@1135 980ebf18-57e1-0310-9a29-db15c13687c0
Diffstat (limited to 'lib')
-rw-r--r--lib/puppet/parser/functions.rb14
1 files changed, 14 insertions, 0 deletions
diff --git a/lib/puppet/parser/functions.rb b/lib/puppet/parser/functions.rb
index bc7e870ae..61070627f 100644
--- a/lib/puppet/parser/functions.rb
+++ b/lib/puppet/parser/functions.rb
@@ -97,6 +97,20 @@ module Functions
return true
end
end
+
+ # Test whether a given class or definition is defined
+ newfunction(:defined, :rvalue) do |vals|
+ retval = true
+
+ vals.each do |val|
+ unless builtintype?(val) or lookuptype(val)
+ retval = false
+ break
+ end
+ end
+
+ return retval
+ end
end
end