summaryrefslogtreecommitdiffstats
path: root/match.c
diff options
context:
space:
mode:
authorKaz Kylheku <kaz@kylheku.com>2011-11-10 16:05:01 -0800
committerKaz Kylheku <kaz@kylheku.com>2011-11-10 16:05:01 -0800
commit8bef574c2fc8d99301f2ebbbaad2acc6e9e8891a (patch)
treee421ac64c7632b8100627c49ee0c3989f6af1dc4 /match.c
parentb41bdc04f6ce6a595fb17e6de39c82770384cb55 (diff)
downloadtxr-8bef574c2fc8d99301f2ebbbaad2acc6e9e8891a.tar.gz
txr-8bef574c2fc8d99301f2ebbbaad2acc6e9e8891a.tar.bz2
txr-8bef574c2fc8d99301f2ebbbaad2acc6e9e8891a.zip
Task #11583
* match.c (dir_tables_init): Mapping flatten_s, forget_s, local_s, merge_s, set_s, cat_s and filter_s to hv_trampoline function, thereby making all these directives work in horizontal contexts in one fell swoop.
Diffstat (limited to 'match.c')
-rw-r--r--match.c7
1 files changed, 7 insertions, 0 deletions
diff --git a/match.c b/match.c
index 6dd3eda0..9021c7c1 100644
--- a/match.c
+++ b/match.c
@@ -3172,7 +3172,14 @@ static void dir_tables_init(void)
sethash(h_directive_table, var_s, cptr((mem_t *) h_var));
sethash(h_directive_table, skip_s, cptr((mem_t *) h_skip));
sethash(h_directive_table, coll_s, cptr((mem_t *) h_coll));
+ sethash(h_directive_table, flatten_s, cptr((mem_t *) hv_trampoline));
+ sethash(h_directive_table, forget_s, cptr((mem_t *) hv_trampoline));
+ sethash(h_directive_table, local_s, cptr((mem_t *) hv_trampoline));
+ sethash(h_directive_table, merge_s, cptr((mem_t *) hv_trampoline));
sethash(h_directive_table, bind_s, cptr((mem_t *) hv_trampoline));
+ sethash(h_directive_table, set_s, cptr((mem_t *) hv_trampoline));
+ sethash(h_directive_table, cat_s, cptr((mem_t *) hv_trampoline));
+ sethash(h_directive_table, filter_s, cptr((mem_t *) hv_trampoline));
sethash(h_directive_table, some_s, cptr((mem_t *) h_parallel));
sethash(h_directive_table, all_s, cptr((mem_t *) h_parallel));
sethash(h_directive_table, none_s, cptr((mem_t *) h_parallel));