Method: Puppet::Functions.create_function
- Defined in:
- lib/puppet/functions.rb
.create_function(func_name, function_base = Function, &block) ⇒ Class<Function>
Returns the newly created Function class.
186 187 188 189 190 191 192 193 194 195 196 |
# File 'lib/puppet/functions.rb', line 186 def self.create_function(func_name, function_base = Function, &block) # Ruby < 2.1.0 does not have method on Binding, can only do eval # and it will fail unless protected with an if defined? if the local # variable does not exist in the block's binder. # loader = block.binding.eval('loader_injected_arg if defined?(loader_injected_arg)') create_loaded_function(func_name, loader, function_base, &block) rescue StandardError => e raise ArgumentError, _("Function Load Error for function '%{function_name}': %{message}") % { function_name: func_name, message: e. } end |