diff options
author | akr <akr@b2dd03c8-39d4-4d8f-98ff-823fe69b080e> | 2014-05-05 12:49:27 +0000 |
---|---|---|
committer | akr <akr@b2dd03c8-39d4-4d8f-98ff-823fe69b080e> | 2014-05-05 12:49:27 +0000 |
commit | 391fc2eeecfc2f0d0f851b0c27ba02e041fe2cd9 (patch) | |
tree | b51b61bc0abb0a66988b84f10eaf5e6f839661c3 | |
parent | a210f7c225b0328ac16748c21e68c28f2236454e (diff) |
* ext/pathname/lib/pathname.rb (Pathname#/): Aliased to Pathname#+.
Suggested by Alexey Muranov. [ruby-core:61432] [Feature #9625]
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@45826 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
-rw-r--r-- | ChangeLog | 5 | ||||
-rw-r--r-- | NEWS | 3 | ||||
-rw-r--r-- | ext/pathname/lib/pathname.rb | 5 | ||||
-rw-r--r-- | test/pathname/test_pathname.rb | 4 |
4 files changed, 17 insertions, 0 deletions
@@ -1,3 +1,8 @@ +Mon May 5 21:48:04 2014 Tanaka Akira <[email protected]> + + * ext/pathname/lib/pathname.rb (Pathname#/): Aliased to Pathname#+. + Suggested by Alexey Muranov. [ruby-core:61432] [Feature #9625] + Mon May 5 17:26:09 2014 Tadayoshi Funaba <[email protected]> * math.c (rb_math_sqrt): omitted exporting an unused function, @@ -70,6 +70,9 @@ with all sufficient information, see the ChangeLog file. * Extended methods: * find method accepts "ignore_error" keyword argument. +* Pathname + * Pathname#/ is aliased to Pathname#+. + === Stdlib compatibility issues (excluding feature bug fixes) * time.rb diff --git a/ext/pathname/lib/pathname.rb b/ext/pathname/lib/pathname.rb index aa9464799d..380e740399 100644 --- a/ext/pathname/lib/pathname.rb +++ b/ext/pathname/lib/pathname.rb @@ -324,12 +324,17 @@ class Pathname # p2 = p1 + "bin/ruby" # Pathname:/usr/bin/ruby # p3 = p1 + "/etc/passwd" # Pathname:/etc/passwd # + # # / is aliased to +. + # p4 = p1 / "bin/ruby" # Pathname:/usr/bin/ruby + # p5 = p1 / "/etc/passwd" # Pathname:/etc/passwd + # # This method doesn't access the file system; it is pure string manipulation. # def +(other) other = Pathname.new(other) unless Pathname === other Pathname.new(plus(@path, other.to_s)) end + alias / + def plus(path1, path2) # -> path # :nodoc: prefix2 = path2 diff --git a/test/pathname/test_pathname.rb b/test/pathname/test_pathname.rb index 4e88db754d..24f6bb942d 100644 --- a/test/pathname/test_pathname.rb +++ b/test/pathname/test_pathname.rb @@ -213,6 +213,10 @@ class TestPathname < Test::Unit::TestCase defassert(:plus, 'a//b/d//e', 'a//b/c', '../d//e') + def test_slash + assert_kind_of(Pathname, Pathname("a") / Pathname("b")) + end + def test_parent assert_equal(Pathname("."), Pathname("a").parent) end |