summaryrefslogtreecommitdiff
path: root/lib/puppet/functions/validate_hash.rb
diff options
context:
space:
mode:
Diffstat (limited to 'lib/puppet/functions/validate_hash.rb')
-rw-r--r--lib/puppet/functions/validate_hash.rb11
1 files changed, 8 insertions, 3 deletions
diff --git a/lib/puppet/functions/validate_hash.rb b/lib/puppet/functions/validate_hash.rb
index fdd8e01..89ad9ab 100644
--- a/lib/puppet/functions/validate_hash.rb
+++ b/lib/puppet/functions/validate_hash.rb
@@ -1,7 +1,12 @@
-Puppet::Functions.create_function(:validate_hash, Puppet::Functions::InternalFunction) do
+Puppet::Functions.create_function(:validate_hash) do
dispatch :deprecation_gen do
- scope_param
- optional_repeated_param 'Any', :args
+ param 'Any', :scope
+ repeated_param 'Any', :args
+ end
+ # Workaround PUP-4438 (fixed: https://github.com/puppetlabs/puppet/commit/e01c4dc924cd963ff6630008a5200fc6a2023b08#diff-c937cc584953271bb3d3b3c2cb141790R221) to support puppet < 4.1.0 and puppet < 3.8.1.
+ def call(scope, *args)
+ manipulated_args = [scope] + args
+ self.class.dispatcher.dispatch(self, scope, manipulated_args)
end
def deprecation_gen(scope, *args)
call_function('deprecation', 'validate_hash', "This method is deprecated, please use the stdlib validate_legacy function, with Stdlib::Compat::Hash. There is further documentation for validate_legacy function in the README.")