Class: Puppet::Functions::InternalFunction Private
- Inherits:
-
Function
- Object
- Pops::Functions::Function
- Function
- Puppet::Functions::InternalFunction
- Defined in:
- lib/puppet/functions.rb
Overview
This class is part of a private API. You should avoid using this class if possible, as it may be removed or be changed in the future.
WARNING: This style of creating functions is not public. It is a system under development that will be used for creating “system” functions.
This is a private, internal, system for creating functions. It supports everything that the public function definition system supports as well as a few extra features such as injection of well known parameters.
Direct Known Subclasses
Instance Attribute Summary
Attributes inherited from Pops::Functions::Function
Class Method Summary collapse
- .builder ⇒ Object private
Instance Method Summary collapse
-
#call_function_with_scope(scope, function_name, *args, &block) ⇒ Object
Allows the implementation of a function to call other functions by name and pass the caller scope.
Methods inherited from Function
argument_mismatch, dispatch, local_types, new
Methods inherited from Pops::Functions::Function
#call, #call_function, #closure_scope, dispatcher, #initialize, signatures
Constructor Details
This class inherits a constructor from Puppet::Pops::Functions::Function
Class Method Details
.builder ⇒ Object
This method is part of a private API. You should avoid using this method if possible, as it may be removed or be changed in the future.
664 665 666 |
# File 'lib/puppet/functions.rb', line 664 def self.builder InternalDispatchBuilder.new(dispatcher, Puppet::Pops::Types::PCallableType::DEFAULT, loader) end |
Instance Method Details
#call_function_with_scope(scope, function_name, *args, &block) ⇒ Object
Allows the implementation of a function to call other functions by name and pass the caller scope. The callable functions are those visible to the same loader that loaded this function (the calling function).
678 679 680 |
# File 'lib/puppet/functions.rb', line 678 def call_function_with_scope(scope, function_name, *args, &block) internal_call_function(scope, function_name, args, &block) end |