X-Git-Url: https://git.adam-barratt.org.uk/?a=blobdiff_plain;f=3rdparty%2Fmodules%2Fstdlib%2Flib%2Fpuppet%2Fparser%2Ffunctions%2Fis_string.rb;h=7410d32a48cd2c188275bba5db443ff9439444a2;hb=30caaa85aed7015ca0d77216bff175eebd917eb7;hp=f5bef0457f7720ec834b9fe2cfdbed6f4b39cff1;hpb=ad88f67c13ae0f1a08936dad643f1e3509ab5f40;p=mirror%2Fdsa-puppet.git diff --git a/3rdparty/modules/stdlib/lib/puppet/parser/functions/is_string.rb b/3rdparty/modules/stdlib/lib/puppet/parser/functions/is_string.rb index f5bef0457..7410d32a4 100644 --- a/3rdparty/modules/stdlib/lib/puppet/parser/functions/is_string.rb +++ b/3rdparty/modules/stdlib/lib/puppet/parser/functions/is_string.rb @@ -1,21 +1,30 @@ # # is_string.rb # - module Puppet::Parser::Functions - newfunction(:is_string, :type => :rvalue, :doc => <<-EOS -Returns true if the variable passed to this function is a string. - EOS - ) do |arguments| + newfunction(:is_string, :type => :rvalue, :doc => <<-DOC + @summary + **Deprecated:** Returns true if the variable passed to this function is a string. + + @return [Boolean] + Returns `true` or `false` + + > **Note:* **Deprecated** Will be removed in a future version of stdlib. See + [`validate_legacy`](#validate_legacy). + DOC + ) do |arguments| + + function_deprecation([:is_string, 'This method is deprecated, please use the stdlib validate_legacy function, + with Stdlib::Compat::String. There is further documentation for validate_legacy function in the README.']) - raise(Puppet::ParseError, "is_string(): Wrong number of arguments " + - "given (#{arguments.size} for 1)") if arguments.size < 1 + raise(Puppet::ParseError, "is_string(): Wrong number of arguments given (#{arguments.size} for 1)") if arguments.empty? type = arguments[0] - result = type.is_a?(String) + # when called through the v4 API shim, undef gets translated to nil + result = type.is_a?(String) || type.nil? - if result and (type == type.to_f.to_s or type == type.to_i.to_s) then + if result && (type == type.to_f.to_s || type == type.to_i.to_s) return false end