I'm happy with how this ended up turning out---I was able to accomplish this without having to introduce any additional state to the parser (I _removed_ a state, actually) by tweaking NIR a bit in a previous commit. We can't update the system test yet, though, because nested templates are not yet supported by asg::air::tpl; that'll come next. If you try, you'll be greeted with this error presently (which is worth showing since you'll never see it unless you're hacking TAMER): ,=====[ ./tests/xmli/template/ logs ]====== | | thread 'main' panicked at 'not yet implemented: internal error: | note: nested tpl open | --> ./tests/xmli/template/src.xml:129:5 | | | 129 | <t:inner-short /> | | -------------- note: for this template | | | !!! ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ !!! | !!! THIS IS AN UNFINISHED FEATURE IN TAMER !!! | !!! ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ !!! | !!! This message means that TAMER has encountered an !!! | !!! unrecoverable error that forced it to terminate !!! | !!! processing. !!! | !!! !!! | !!! TAMER has attempted to provide you with contextual !!! | !!! information above that might allow you to work around !!! | !!! this problem until it can be fixed. !!! | !!! !!! | !!! Please report this error, including the above !!! | !!! diagnostic output beginning with 'internal error:'. !!! | !!! ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ !!! | ', src/asg/air/tpl.rs:207:55 | note: run with `RUST_BACKTRACE=1` environment variable to display a backtrace | Command exited with non-zero status 101 | 0/165fault 0/8io 3528rss 14/2ctx | /home/[...]/tame/tamer/target/debug/tamec -o ./tests/xmli/template/out.xmli --emit xmlo ./tests/xmli/template/src.xml | `====[ end ./tests/xmli/template/ logs ]==== DEV-13708 |
||
---|---|---|
.. | ||
air | ||
interp | ||
tplshort | ||
air.rs | ||
interp.rs | ||
parse.rs | ||
tplshort.rs |