diff options
author | Pavel Machek <pavel@ucw.cz> | 2000-04-20 12:25:51 +0200 |
---|---|---|
committer | Pavel Machek <pavel@ucw.cz> | 2000-04-20 12:25:51 +0200 |
commit | 7d6eebae3b87cac2d09fd5201b603d4fd969fe06 (patch) | |
tree | 15802c4cf188919cf9b4af76b57dc172dd196f67 /filter/config.Y | |
parent | 77f37ae0994774f6402499e0a79287d85afa6edf (diff) | |
download | bird-7d6eebae3b87cac2d09fd5201b603d4fd969fe06.tar bird-7d6eebae3b87cac2d09fd5201b603d4fd969fe06.zip |
Create syntax sugar for add/delete/prepend, so xyzzy.prepend(123) is
possible. That means that milestone 3 was reached.
Diffstat (limited to 'filter/config.Y')
-rw-r--r-- | filter/config.Y | 7 |
1 files changed, 7 insertions, 0 deletions
diff --git a/filter/config.Y b/filter/config.Y index 3396669..f33405f 100644 --- a/filter/config.Y +++ b/filter/config.Y @@ -550,6 +550,13 @@ cmd: $$->a1.p = $2; $$->a2.p = build_tree( $4 ); } + + + | rtadot dynamic_attr '.' EMPTY ';' + { struct f_inst *i = f_new_inst(); i->code = 'E'; i->aux = T_CLIST; $$ = $2; $$->code = P('e','S'); $$->a1.p = i; } + | rtadot dynamic_attr '.' PREPEND '(' term ')' ';' { $$ = f_generate_complex( P('A','p'), 'x', $2, $6 ); } + | rtadot dynamic_attr '.' ADD '(' term ')' ';' { $$ = f_generate_complex( P('C','a'), 'a', $2, $6 ); } + | rtadot dynamic_attr '.' DELETE '(' term ')' ';' { $$ = f_generate_complex( P('C','a'), 'd', $2, $6 ); } ; CF_END |