diff options
author | Kaz Kylheku <kaz@kylheku.com> | 2014-01-28 22:29:02 -0800 |
---|---|---|
committer | Kaz Kylheku <kaz@kylheku.com> | 2014-01-28 22:29:43 -0800 |
commit | b8966f0bf73f01e1e380a08e6949ccc9ddd45637 (patch) | |
tree | 432fb8cd11319e84500103158bfe482f15b340b1 /eval.c | |
parent | 1f4a36cb97cb259ce8209de52229f33b341af9cd (diff) | |
download | txr-b8966f0bf73f01e1e380a08e6949ccc9ddd45637.tar.gz txr-b8966f0bf73f01e1e380a08e6949ccc9ddd45637.tar.bz2 txr-b8966f0bf73f01e1e380a08e6949ccc9ddd45637.zip |
* eval.c (eval_init): Registered existing make_catenated_stream as
intrinsic.
* stream.c (cat_get_line, cat_get_char, cat_get_byte): Do not
remove the last stream from the stream list, so that there is
some stream object there which can take the unget-char or
unget-byte operations.
(cat_unget_byte, cat_unget_char): New static functions.
(cat_stream_ops): unget_char and unget_byte function pointers
filled in.
* txr.1: Documented catenated-streams.
Diffstat (limited to 'eval.c')
-rw-r--r-- | eval.c | 2 |
1 files changed, 2 insertions, 0 deletions
@@ -2542,6 +2542,7 @@ void eval_init(void) reg_fun(intern(lit("real-time-stream-p"), user_package), func_n1(real_time_stream_p)); reg_fun(intern(lit("stream-set-prop"), user_package), func_n3(stream_set_prop)); reg_fun(intern(lit("stream-get-prop"), user_package), func_n2(stream_get_prop)); + reg_fun(intern(lit("make-catenated-stream"), user_package), func_n0v(make_catenated_stream)); reg_var(intern(lit("s-ifmt"), user_package), &s_ifmt); reg_var(intern(lit("s-iflnk"), user_package), &s_iflnk); reg_var(intern(lit("s-ifreg"), user_package), &s_ifreg); @@ -2573,6 +2574,7 @@ void eval_init(void) reg_fun(intern(lit("open-process"), user_package), func_n3o(open_process, 2)); reg_fun(intern(lit("remove-path"), user_package), func_n1(remove_path)); reg_fun(intern(lit("rename-path"), user_package), func_n2(rename_path)); + reg_var(intern(lit("*user-package*"), user_package), &user_package); reg_var(intern(lit("*keyword-package*"), user_package), &keyword_package); reg_var(intern(lit("*system-package*"), user_package), &system_package); |