Tom Alexander
af5122ab9f
Figured out how to get a value using to_string()
...
Figured out how to get a value using `to_string()` but serde_json's `to_string()` is wrapping a string in quotes. I think I want to implement my own trait to support custom logic for rendering values.
2020-04-11 19:05:50 -04:00
Tom Alexander
265afe7eeb
I think I figured out how to get the Index trait back into the generic type.
2020-04-11 19:05:50 -04:00
Tom Alexander
f65a144b3c
Beginning of the render_tag function.
...
Beginning of the render_tag function. At this point I need to figure out how to access elements in the context.
2020-04-11 19:05:40 -04:00
Tom Alexander
2459d7b418
Rendering spans
2020-04-11 18:25:48 -04:00
Tom Alexander
13934e8699
Rename DustContext to DustRenderer
2020-04-10 20:58:55 -04:00
Tom Alexander
2842d0a14a
Loading the compiled templates into a context
2020-04-10 20:55:44 -04:00
Tom Alexander
743106684a
compiling templates in the same manner as the shim
2020-04-10 20:27:27 -04:00
Tom Alexander
7e0a617ba6
Add support for supplying multiple templates to the dustjs shim to support testing partials.
2020-04-10 19:07:02 -04:00
Tom Alexander
608c55575e
Merge branch 'helpers'
2020-04-10 19:05:09 -04:00
Tom Alexander
05d9e20a8f
Add all the helpers
2020-04-07 21:49:28 -04:00
Tom Alexander
15c732b3a3
Also stealing the ParameterizedBlock struct
2020-04-07 20:37:15 -04:00
Tom Alexander
b7120a34de
Forking the partial code for reuse as helper code
2020-04-07 20:21:26 -04:00
Tom Alexander
ad33f98404
Merge branch 'partials'
2020-04-07 19:56:44 -04:00
Tom Alexander
2ebe4798d5
Add test for quoted partial
2020-04-07 19:53:57 -04:00
Tom Alexander
e2f03de297
Integrated the partial parser into the rest of the grammar
2020-04-07 19:51:06 -04:00
Tom Alexander
8bfa622c4c
parsing out string literals in addition to paths
2020-04-06 23:47:50 -04:00
Tom Alexander
79100fc50f
Introducing a KVPair type
2020-04-06 23:35:09 -04:00
Tom Alexander
dd8b4ac28c
Introducing an RValue enum to handle paths vs literals
2020-04-06 23:30:42 -04:00
Tom Alexander
8641e5a98b
Starting stand-alone parsers for key value pairs
2020-04-06 23:21:03 -04:00
Tom Alexander
ffce2b0569
The extra steps are making it harder to debug, so move parser directly into test
2020-04-06 22:47:24 -04:00
Tom Alexander
647c22b3a9
Initial scaffold for partials
2020-04-06 22:02:10 -04:00
Tom Alexander
c6f43820ca
Merge branch 'quoted_strings'
2020-04-06 21:26:29 -04:00
Tom Alexander
989bc6ed2a
Added backslash to the quoted string test
2020-04-06 21:26:08 -04:00
Tom Alexander
a6e48aee6a
Switch to escaped_transform to unescape the text.
2020-04-06 21:09:06 -04:00
Tom Alexander
5463ed2cdf
Added surrounding quotes
2020-04-06 21:03:03 -04:00
Tom Alexander
878cbf56ca
Switch to raw strings
2020-04-06 20:47:17 -04:00
Tom Alexander
a0b032ad4b
I was missing an escape character
2020-04-06 20:45:39 -04:00
Tom Alexander
586823aa8a
first test case failing
2020-04-06 20:34:04 -04:00
Tom Alexander
b3120d2e52
Initial scaffold for developing a quoted string parser
2020-04-06 20:20:53 -04:00
Tom Alexander
41abcb9b4a
Add support for named blocks
2020-04-05 23:47:55 -04:00
Tom Alexander
52824b4d0b
Rename the container parser to conditional.
...
Rename the container parser to conditional because we are going to have other tags with bodies that do not match the same semantics as the conditional blocks. An example of this is inline partials only support a single key rather than a path.
2020-04-05 19:39:07 -04:00
Tom Alexander
de4f420627
separate out the parser for key because partials don't use a full path, only a key
2020-04-05 19:34:46 -04:00
Tom Alexander
7f2c7151a9
Rename Block to Body because dust uses the name Block for {+
2020-04-05 19:29:16 -04:00
Tom Alexander
fb17911c44
Change repo to generate both a library and a binary.
...
This repo will primary be a library, but for compliance testing it may make sense to have a binary operating in the same fashion as the node dustjs shim so I've set up this repo to generate both a library and a binary.
2020-04-05 19:21:43 -04:00
Tom Alexander
0d659afa2f
Rename duster module to parser
2020-04-05 19:21:43 -04:00
Tom Alexander
34882024b3
Add support for else blocks
2020-04-05 19:21:42 -04:00
Tom Alexander
9da8ea7294
Add support for self-closing containers
2020-04-05 19:21:42 -04:00
Tom Alexander
fff229df90
Integrated exists and not exists containers
2020-04-05 19:21:41 -04:00
Tom Alexander
5f297eca78
Beginning of creating a generic Container parser
2020-04-05 19:21:40 -04:00
Tom Alexander
7d51e500d8
Change section parser to wrap entire function in verify()
for better error messages.
2020-04-05 19:21:40 -04:00
Tom Alexander
adf2f1f2b5
Move section into a DustTag as opposed to a top-level block element
2020-04-05 19:21:39 -04:00
Tom Alexander
5a0b3abf0e
Support sections with bodies
2020-04-05 19:21:39 -04:00
Tom Alexander
95a3cff278
Deriving clone/debug
2020-04-05 19:21:38 -04:00
Tom Alexander
87a7024bf0
Add tests for dust parser
2020-04-05 19:21:38 -04:00
Tom Alexander
bec69557fc
Add a definition of span and the parser for a full document
2020-04-05 19:21:37 -04:00
Tom Alexander
ac2ee2c756
Add support for filters
2020-04-05 19:21:36 -04:00
Tom Alexander
5127534609
Add a basic reference implementation missing filter support
2020-04-05 19:21:36 -04:00
Tom Alexander
9b3084856b
Starting the rust-based parser of dust templates
2020-04-05 19:21:35 -04:00
Tom Alexander
d3b58c9a0e
Add rust code to invoke the shim
2020-04-05 19:21:34 -04:00
Tom Alexander
26a752baea
Added a simple javascript "shim" to invoke dustjs for later use with testing
2020-04-05 19:21:34 -04:00