summaryrefslogtreecommitdiffstats
path: root/lib.h
diff options
context:
space:
mode:
authorKaz Kylheku <kaz@kylheku.com>2016-01-12 06:38:11 -0800
committerKaz Kylheku <kaz@kylheku.com>2016-01-12 06:38:11 -0800
commite8a6a7a53407fd4c4adc37e8013baf9bc2e4d553 (patch)
tree856f86bb483d7aec190f9ea5422261c6639da221 /lib.h
parentd8b8365eb2f40cf3bad1815c349faa6e0b5aab93 (diff)
downloadtxr-e8a6a7a53407fd4c4adc37e8013baf9bc2e4d553.tar.gz
txr-e8a6a7a53407fd4c4adc37e8013baf9bc2e4d553.tar.bz2
txr-e8a6a7a53407fd4c4adc37e8013baf9bc2e4d553.zip
Print control chars in regexes using \x.
* lib.c (out_str_char): Static function becomes extern. * lib.h (out_str_char): Declared. * regex.c (puts_clear_flag, putc_clear_flag): New static functions. (print_class_char): Take semicolon flag argument. Use out_str_char to render characters not escaped locally. Clear the semicolon flag. (paren_print_rec): Take semicolon flag argument, and pass it down. Clear it when printing parentheses. (print_rec): Take semicolon flag argument, and pass down to lower level functions. Use putc_clear_flag and puts_clear_flag instead of put_string and put_char. Use out_str_char for char object not esaped locally. (regex_print): define semi_flag and pass it down to print_rec.
Diffstat (limited to 'lib.h')
-rw-r--r--lib.h1
1 files changed, 1 insertions, 0 deletions
diff --git a/lib.h b/lib.h
index 1959eb06..83b81c24 100644
--- a/lib.h
+++ b/lib.h
@@ -940,6 +940,7 @@ val rangep(val obj);
val from(val range);
val to(val range);
val env(void);
+void out_str_char(wchar_t ch, val out, int *semi_flag);
val obj_print_impl(val obj, val out, val pretty);
val obj_print(val obj, val stream);
val obj_pprint(val obj, val stream);