Puppet Function: squeeze
- Defined in:
-
vendor_modules/stdlib/lib/puppet/parser/functions/squeeze.rb
- Function type:
- Ruby 3.x API
Summary
Returns a new string where runs of the same character that occur in this set are replaced by a single character.
Overview
squeeze() ⇒ Any
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
|
# File 'vendor_modules/stdlib/lib/puppet/parser/functions/squeeze.rb', line 7
newfunction(:squeeze, type: :rvalue, doc: <<-DOC
@summary
Returns a new string where runs of the same character that occur in this set are replaced by a single character.
@return
a new string where runs of the same character that occur in this set are replaced by a single character.
DOC
) do |arguments|
if (arguments.size != 2) && (arguments.size != 1)
raise(Puppet::ParseError, "squeeze(): Wrong number of arguments given #{arguments.size} for 2 or 1")
end
item = arguments[0]
squeezeval = arguments[1]
if item.is_a?(Array)
if squeezeval
item.map { |i| i.squeeze(squeezeval) }
else
item.map { |i| i.squeeze }
end
elsif squeezeval
item.squeeze(squeezeval)
else
item.squeeze
end
end
|