From e8a6a7a53407fd4c4adc37e8013baf9bc2e4d553 Mon Sep 17 00:00:00 2001 From: Kaz Kylheku Date: Tue, 12 Jan 2016 06:38:11 -0800 Subject: 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. --- lib.h | 1 + 1 file changed, 1 insertion(+) (limited to 'lib.h') 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); -- cgit v1.2.3