summaryrefslogtreecommitdiffstats
path: root/stream.h
diff options
context:
space:
mode:
authorKaz Kylheku <kaz@kylheku.com>2017-05-21 08:48:20 -0700
committerKaz Kylheku <kaz@kylheku.com>2017-05-21 08:48:20 -0700
commit60782a5351d2306ac69f700bfb5ab458648190d7 (patch)
tree814122f41e65786b3bacf1958d491eb8703de7e8 /stream.h
parent002969ba8021677cb6dc9a29374f174cbb4f8654 (diff)
downloadtxr-60782a5351d2306ac69f700bfb5ab458648190d7.tar.gz
txr-60782a5351d2306ac69f700bfb5ab458648190d7.tar.bz2
txr-60782a5351d2306ac69f700bfb5ab458648190d7.zip
Adding base-name and dir-name functions.
* stream.c (path_sep_chars): New global variable. (detect_path_separators): New static function. (base_name, dir_name): New functions. (stream_init): Call detect_path_separators. Register base-name and dir-name intrinsic functions, and path-sep-chars variable. * stream.h (path_sep_chars, base_name, dir_name): Declared. * txr.c (dirname): Static function removed. (sysroot_init): Use dir_name instead of dirname. * txr.1: Documented dir-name, base-name and path-sep-chars.
Diffstat (limited to 'stream.h')
-rw-r--r--stream.h4
1 files changed, 4 insertions, 0 deletions
diff --git a/stream.h b/stream.h
index 1985cb42..290af343 100644
--- a/stream.h
+++ b/stream.h
@@ -129,6 +129,8 @@ extern val pprint_flo_format_s, print_base_s, print_circle_s;
extern val socket_error_s;
#endif
+extern const wchli_t *path_sep_chars;
+
void strm_base_init(struct strm_base *s);
void strm_base_cleanup(struct strm_base *s);
void strm_base_mark(struct strm_base *s);
@@ -213,5 +215,7 @@ val remove_path(val path, val throw_on_error);
val rename_path(val from, val to);
val abs_path_p(val path);
val pure_rel_path_p(val path);
+val base_name(val path);
+val dir_name(val path);
void stream_init(void);