X-Git-Url: https://git.adam-barratt.org.uk/?a=blobdiff_plain;f=3rdparty%2Fmodules%2Fstdlib%2Flib%2Fpuppet%2Fparser%2Ffunctions%2Fbasename.rb;h=e247e566aeb081574a98f164d9080db798747f24;hb=30caaa85aed7015ca0d77216bff175eebd917eb7;hp=f7e4438477b1f8357485136c6dfdb4073a64e502;hpb=ad88f67c13ae0f1a08936dad643f1e3509ab5f40;p=mirror%2Fdsa-puppet.git diff --git a/3rdparty/modules/stdlib/lib/puppet/parser/functions/basename.rb b/3rdparty/modules/stdlib/lib/puppet/parser/functions/basename.rb index f7e443847..e247e566a 100644 --- a/3rdparty/modules/stdlib/lib/puppet/parser/functions/basename.rb +++ b/3rdparty/modules/stdlib/lib/puppet/parser/functions/basename.rb @@ -1,30 +1,23 @@ +# +# basename.rb +# module Puppet::Parser::Functions - newfunction(:basename, :type => :rvalue, :doc => <<-EOS - Strips directory (and optional suffix) from a filename - EOS - ) do |arguments| - - if arguments.size < 1 then - raise(Puppet::ParseError, "basename(): No arguments given") - elsif arguments.size > 2 then - raise(Puppet::ParseError, "basename(): Too many arguments given (#{arguments.size})") - else - - unless arguments[0].is_a?(String) - raise(Puppet::ParseError, 'basename(): Requires string as first argument') - end - - if arguments.size == 1 then - rv = File.basename(arguments[0]) - elsif arguments.size == 2 then - - unless arguments[1].is_a?(String) - raise(Puppet::ParseError, 'basename(): Requires string as second argument') - end - - rv = File.basename(arguments[0], arguments[1]) - end - + newfunction(:basename, :type => :rvalue, :doc => <<-DOC + @summary + Strips directory (and optional suffix) from a filename + + @return [String] The stripped filename + DOC + ) do |arguments| + + raise(Puppet::ParseError, 'basename(): No arguments given') if arguments.empty? + raise(Puppet::ParseError, "basename(): Too many arguments given (#{arguments.size})") if arguments.size > 2 + raise(Puppet::ParseError, 'basename(): Requires string as first argument') unless arguments[0].is_a?(String) + + rv = File.basename(arguments[0]) if arguments.size == 1 + if arguments.size == 2 + raise(Puppet::ParseError, 'basename(): Requires string as second argument') unless arguments[1].is_a?(String) + rv = File.basename(arguments[0], arguments[1]) end return rv