Commit graph

67 commits

Author SHA1 Message Date
Wim Looman
359079ca6c Use join 2016-02-02 16:20:11 +01:00
Wim Looman
b1680636cf Add a shorthand syntax to define element classes 2016-02-02 16:20:11 +01:00
Chris Wong
0440f5c74f Merge pull request from Nemo157/path-in-splice
Allow path lookups in un-delimited splices
2016-02-02 21:30:48 +11:00
Wim Looman
6b0b7a00d7 Allow path lookups in un-delimited splices 2016-02-01 18:18:10 +01:00
Wim Looman
6858108f9c Allow tuple attribute lookups 2016-02-01 18:03:50 +01:00
Chris Wong
8d0ad20f74 Update Rust 2016-01-01 11:43:59 +13:00
Chris Wong
3791f801c9 Update Rust 2015-12-20 22:18:44 +11:00
Chris Wong
54889b2004 Update Rust 2015-11-20 10:56:29 +13:00
Chris Wong
05b5d099fb Update Rust 2015-11-08 18:59:11 +13:00
Chris Wong
34f14dd41d Don't choke on SubstNt tokens
Closes 
2015-11-05 21:46:43 +13:00
Chris Wong
2e0aa3e433 Replace $$ syntax with a general trait thing 2015-10-06 19:25:29 +13:00
Chris Wong
f82c74a699 Refactor 2015-09-28 21:40:37 +13:00
Chris Wong
aa5c8862bc Update Rust 2015-09-28 20:16:23 +13:00
Chris Wong
cf0cf095c2 Revert "Add #call_box instruction"
This reverts commit 0311bab45b.
2015-09-26 13:56:52 +12:00
Chris Wong
0311bab45b Add #call_box instruction 2015-09-24 11:50:33 +12:00
Chris Wong
7d124e616e Add #call instruction 2015-09-23 14:29:45 +12:00
Chris Wong
b50a3be6f6 Handle hyphens in attribute and element names
Closes 
2015-09-15 17:51:27 +12:00
Chris Wong
059b82e091 DON'T PANIC
Closes 
2015-09-15 13:38:32 +12:00
Chris Wong
aee18ee06f Clean up parser a bit 2015-09-14 22:16:01 +12:00
Chris Wong
37835b3b24 Rename $if and $for to #if and #for
`#if` and `#for` aren't splices. They are a different concept, so should
have different syntax as well.
2015-09-12 13:53:14 +12:00
Chris Wong
ebbd5d2e54 Add a write_html! macro
This handles the common case of wrapping the stream in a `Utf8Writer`.
2015-09-07 19:46:06 +12:00
Chris Wong
4c6fe05395 Use match instead of let to hold on to the writer
This fixes a bunch of lifetime issues
2015-09-06 12:10:55 +12:00
Chris Wong
136d8abdf6 Update: rename LitBinary to LitByteStr 2015-09-06 11:26:57 +12:00
Chris Wong
28b1624f4c Rename write_html! to html!
It's more concise
2015-09-03 11:06:05 +12:00
Chris Wong
1badbd9df2 De-closureify the API
Closes 
2015-09-01 18:26:50 +12:00
Chris Wong
6d59013f1b Update Rust 2015-07-31 17:33:50 +12:00
Chris Wong
180becbee4 Coalesce the contents of blocks as well 2015-04-10 19:02:36 +12:00
Chris Wong
dfbd4e2880 Rename a bunch of things 2015-04-10 19:02:36 +12:00
Chris Wong
3c4f892d29 Update Rust 2015-04-08 22:43:48 +12:00
Chris Wong
c75ced0f02 Clean up lifetimes stuff 2015-04-04 10:27:44 +13:00
Chris Wong
c7ab906ad9 Guard against trailing tokens in Rust exprs
Currently, the following parses:

    $for x in y.iter() #$%!INVALID~SYNTAX!^&* {
    }

This is because the Rust parser only consumes enough to parse a single
expression (in this case `y.iter()`), ignoring all the nonsense after
it.

With this patch, we check that the parser has consumed *all* tokens
before yielding a result, ensuring that invalid syntax (like the snippet
above) is not ignored.
2015-03-27 13:57:58 +13:00
Chris Wong
a8928988d0 Add some missing semicolons 2015-03-27 13:57:58 +13:00
Chris Wong
92020cfa86 Cleanup 2015-03-15 16:42:34 +13:00
Chris Wong
333eb46c3a Support if let 2015-03-15 16:23:19 +13:00
Chris Wong
a530d73d25 Implement for expressions 2015-03-14 21:14:11 +13:00
Chris Wong
4da1e369cd Tweak error messages a bit 2015-03-14 21:14:11 +13:00
Chris Wong
ef1e305468 Rewrite if expression stuff 2015-03-01 19:56:01 -05:00
Chris Wong
ed28f1c1bc Implement if/else 2015-02-27 17:26:14 +13:00
Chris Wong
bc305caf17 Epic refactor of doom, the third 2015-02-27 17:26:06 +13:00
Chris Wong
fa9404872e Refactor toggleable attributes 2015-02-09 15:05:50 +13:00
Chris Wong
7e6528550d Update Rust 2015-02-09 15:03:54 +13:00
Chris Wong
1c0d5e9c31 Make the renderer owned instead of borrowed 2015-02-07 17:48:09 +13:00
Chris Wong
8be631411c Make span always the first parameter 2015-02-07 17:08:08 +13:00
Chris Wong
56a7728fa1 Use correct span while parsing a block 2015-02-07 17:05:36 +13:00
Chris Wong
f080ee7da1 Epic refactor of doom, redux 2015-02-06 16:26:35 +13:00
Chris Wong
e01af11eaa Update Rust 2015-02-02 20:53:47 +13:00
Chris Wong
110930a558 Epic refactor of doom
* Use `&ExtCtxt` instead of `&mut ExtCtxt`

* Take statements vector by value instead of by reference

* Make control structures easier to write
2015-01-30 18:48:29 +13:00
Chris Wong
dca0400692 Implement toggleable boolean attributes
Closes 
2015-01-29 13:47:11 +13:00
Chris Wong
205cc59849 Remove deprecated .slice_from() call 2015-01-25 20:05:43 +13:00
Chris Wong
2250c2e961 Make splices a bit nicer to use 2015-01-18 20:18:21 +13:00