about summary refs log tree commit diff
path: root/src
diff options
context:
space:
mode:
authorGraydon Hoare <graydon@mozilla.com>2011-01-10 18:17:24 -0800
committerGraydon Hoare <graydon@mozilla.com>2011-01-10 18:17:24 -0800
commit11cbbcf79e0de904eb7f176db7f7587b40637ec8 (patch)
treef1cb51eef032448d0ff6c76cdb72722d47de056d /src
parentb000bfeedcbfc9859d1599183cdd270938fe526c (diff)
downloadrust-11cbbcf79e0de904eb7f176db7f7587b40637ec8.tar.gz
rust-11cbbcf79e0de904eb7f176db7f7587b40637ec8.zip
Add std.path module for pathname manipulations.
Diffstat (limited to 'src')
-rw-r--r--src/lib/path.rs21
-rw-r--r--src/lib/std.rc1
2 files changed, 22 insertions, 0 deletions
diff --git a/src/lib/path.rs b/src/lib/path.rs
new file mode 100644
index 00000000000..9cda93d6e55
--- /dev/null
+++ b/src/lib/path.rs
@@ -0,0 +1,21 @@
+
+type path = str;
+
+fn dirname(path p) -> path {
+    auto sep = os.path_sep();
+    check (_str.byte_len(sep) == 1u);
+    let int i = _str.rindex(p, sep.(0));
+    if (i == -1) {
+        ret p;
+    }
+    ret _str.substr(p, 0u, i as uint);
+}
+
+// Local Variables:
+// mode: rust;
+// fill-column: 78;
+// indent-tabs-mode: nil
+// c-basic-offset: 4
+// buffer-file-coding-system: utf-8-unix
+// compile-command: "make -k -C .. 2>&1 | sed -e 's/\\/x\\//x:\\//g'";
+// End:
diff --git a/src/lib/std.rc b/src/lib/std.rc
index b5a1030be07..102aa4d1516 100644
--- a/src/lib/std.rc
+++ b/src/lib/std.rc
@@ -56,6 +56,7 @@ mod rand;
 mod dbg;
 mod bitv;
 mod sort;
+mod path;
 
 // Local Variables:
 // mode: rust;