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
34
|
# File 'lib/datadog/core/telemetry/configuration_value.rb', line 9
def convert(value)
case value
when Integer, String, true, false, nil
value
when Float
value.finite? ? value : value.to_s
when Hash
value.map { |key, entry_value| "#{key}:#{entry_value}" }.join(",")
when Array
value.join(",")
when Module
value.name.to_s
else
implements_to_s = begin
value.method(:to_s).owner != Kernel
rescue NameError
false
end
if implements_to_s
value.to_s
else
value.class.to_s
end
end
end
|