如何在 Puppet::Functions 中定义可选参数
How to define optional parameters in Puppet::Functions
我想用 Puppet::Functions.create_function
创建一个人偶 ruby 函数。在这里我定义了一些参数。其中一些应该是可选的或应该有默认值。
Puppet::Functions.create_function(:'foo') do
dispatch :bar do
param 'String', :param_1
param 'String', :param_2
param 'String', :param_3
def bar(a,b,c)
puts "#{a} - #{b} - #{c}"
end
end
param_1 和 param_3 应该是可选的。有办法吗?
下面应该做的
Puppet::Functions.create_function(:foo) do
dispatch :foo do
param 'String', :param_1
optional_param 'String', :param_2
optional_param 'String', :param_3
def foo(param_1, param_2='default_value', param_3='default_value')
puts "#{param_1} - #{param_2} - #{param_3}"
end
end
示例见此处https://github.com/puppetlabs/puppetlabs-stdlib/blob/master/lib/puppet/functions/to_json_pretty.rb
我想用 Puppet::Functions.create_function
创建一个人偶 ruby 函数。在这里我定义了一些参数。其中一些应该是可选的或应该有默认值。
Puppet::Functions.create_function(:'foo') do
dispatch :bar do
param 'String', :param_1
param 'String', :param_2
param 'String', :param_3
def bar(a,b,c)
puts "#{a} - #{b} - #{c}"
end
end
param_1 和 param_3 应该是可选的。有办法吗?
下面应该做的
Puppet::Functions.create_function(:foo) do
dispatch :foo do
param 'String', :param_1
optional_param 'String', :param_2
optional_param 'String', :param_3
def foo(param_1, param_2='default_value', param_3='default_value')
puts "#{param_1} - #{param_2} - #{param_3}"
end
end
示例见此处https://github.com/puppetlabs/puppetlabs-stdlib/blob/master/lib/puppet/functions/to_json_pretty.rb