This repository is private.
All pages are served over SSL and all pushing and pulling is done over SSH.
No one may fork, clone, or view it unless they are added as a member.
Every repository with this icon (
) is private.
Every repository with this icon (
This repository is public.
Anyone may fork, clone, or view it.
Every repository with this icon (
) is public.
Every repository with this icon (
commit 35a16f7c84e081b097992d26da558970fd08a38a
tree f116b86022f9b7eff7b5ac7e48c6a773a4d360f1
parent 8146811ac25a5b635d172dad7872126cfb9ab671
tree f116b86022f9b7eff7b5ac7e48c6a773a4d360f1
parent 8146811ac25a5b635d172dad7872126cfb9ab671
README
= pathname3 This library is a replacement for the venerable pathname and pathname2 libraries. The original implementation of pathname is extremely slow, and instantiates extreme numbers of objects for relatively simple operations. Twenty or so Pathname instantiations on some method calls is relatively common. An implementation by Daniel J. Berger, pathname2, improved on the original significantly, adding Windows support, a Facade implementation, and a String- based implementation. While his version is faster, it's still very slow at instantiation. And it's Facade implementation misses some odd case methods like Pathname#join. This version will focus on being fast and lightweight, while still being pure Ruby. Windows support will be forthcoming once I have access to a Windows development machine. Until then, patches adding Windows compatibility are welcome. == Installation You can install pathname3 through Rubygems. The gem is hosted on GitHub, and can be installed via $ sudo gem install --source http://gems.github.com/ stouset-pathname3 == Usage require 'pathname3' p = '~/foo'.to_path # => "~/foo" p.absolute? # => false p.relative? # => true p.exists? # => false p = p.absolute # => "/Users/stouset/foo" p.absolute? # => true p.relative? # => false p.relative_path_from('/Users') # => "stouset/foo" p.relative_path_from('/Library') # => "../Users/stouset/foo" p.split # => ["/Users/stouset", "foo"] p.touch # => "/Users/stouset/foo" p.ctime # => Thu Jun 05 14:00:01 -0400 2008 p.delete # => true == Contribution The pathname3 project is hosted on GitHub. http://github.com/stouset/pathname3/ To clone the repository, simply run: git clone git://github.com/stouset/pathname3.git == License pathname3 is available under the MIT license. :include: LICENSE








