Puppet Function: length

Defined in:
modules/stdlib/lib/puppet/functions/length.rb
Function type:
Ruby 4.x API

Overview

length(Variant[String,Array,Hash] $value)Integer

The original size() function did not handle Puppets new type capabilities, so this function is a Puppet 4 compatible solution.

> *Note:* *Deprecated* from Puppet 6.0.0, this function has been replaced with a built-in [`length`](puppet.com/docs/puppet/latest/function.html#length) function.

Parameters:

  • value (Variant[String,Array,Hash])

    The value whose length is to be found

Returns:

  • (Integer)

    The length of the given object



10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
# File 'modules/stdlib/lib/puppet/functions/length.rb', line 10

Puppet::Functions.create_function(:length) do
  # @param value
  #   The value whose length is to be found
  #
  # @return [Integer]
  #   The length of the given object
  dispatch :length do
    param 'Variant[String,Array,Hash]', :value
  end
  def length(value)
    if value.is_a?(String)
      result = value.length
    elsif value.is_a?(Array) || value.is_a?(Hash)
      result = value.size
    end
    result
  end
end