diff options
author | Kaz Kylheku <kaz@kylheku.com> | 2021-08-18 06:51:44 -0700 |
---|---|---|
committer | Kaz Kylheku <kaz@kylheku.com> | 2021-08-18 06:51:44 -0700 |
commit | ca59be500904f84f5b138257cc152e1ec6764819 (patch) | |
tree | 9736456339f67f3ecede8394dc336d444168fb77 /parser.c | |
parent | 4911b99c3a255155931248669da0546ca7c005d3 (diff) | |
download | txr-ca59be500904f84f5b138257cc152e1ec6764819.tar.gz txr-ca59be500904f84f5b138257cc152e1ec6764819.tar.bz2 txr-ca59be500904f84f5b138257cc152e1ec6764819.zip |
New ecase macros.
Even prior to discovering the recent defect in deffi, which
was caused by a missing case in caseql, combined with poor
testing, I was already thinking about adding ecase macros.
The introduction of must-match and must-match-case also shows
my motivation. That deffi bug convinced me to take action
and implement these.
* eval.c (case_error_s) New symbol variable.
(me_ecase): New static function.
(eval_init): Register new intrinsic macros ecaseq, ecaseql,
ecasequal, ecaseq*, ecaseql* and ecasequal*.
Intern case-error and initialize case_error_s.
* txr.1: Documented. Also updated Exception Hierarchy diagram
with match-error and case-error.
* stdlib/doc-syms.tl: Updated.
Diffstat (limited to 'parser.c')
0 files changed, 0 insertions, 0 deletions