# File lib/rake.rb, line 73
73:     def ext(newext='')
74:       return self.dup if ['.', '..'].include? self
75:       if newext != ''
76:         newext = (newext =~ /^\./) ? newext : ("." + newext)
77:       end
78:       dup.sub!(%r(([^/\\])\.[^./\\]*$)) { $1 + newext } || self + newext
79:     end