File tree Expand file tree Collapse file tree 3 files changed +27
-8
lines changed Expand file tree Collapse file tree 3 files changed +27
-8
lines changed Original file line number Diff line number Diff line change @@ -50,18 +50,21 @@ pub enum TagNode {
5050 bits : Vec < String > ,
5151 children : Vec < Node > ,
5252 } ,
53- Branching {
53+ Branch {
5454 name : String ,
5555 bits : Vec < String > ,
5656 children : Vec < Node > ,
57- branches : Vec < TagNode > ,
57+ } ,
58+ Closing {
59+ name : String ,
60+ bits : Vec < String > ,
5861 } ,
5962}
6063
6164#[ derive( Clone , Debug , Serialize ) ]
6265pub struct DjangoFilter {
63- name : String ,
64- arguments : Vec < String > ,
66+ pub name : String ,
67+ pub arguments : Vec < String > ,
6568}
6669
6770impl DjangoFilter {
Original file line number Diff line number Diff line change @@ -5,15 +5,21 @@ use std::fs;
55use std:: path:: Path ;
66use toml:: Value ;
77
8- #[ derive( Clone , Debug , Deserialize ) ]
8+ #[ derive( Debug , Clone , Deserialize ) ]
99pub struct TagSpec {
1010 #[ serde( rename = "type" ) ]
1111 pub tag_type : TagType ,
1212 pub closing : Option < String > ,
13- pub intermediates : Option < Vec < String > > ,
13+ pub intermediates : Option < Vec < IntermediateSpec > > ,
1414 pub args : Option < Vec < ArgSpec > > ,
1515}
1616
17+ #[ derive( Debug , Clone , Deserialize ) ]
18+ pub struct IntermediateSpec {
19+ pub name : String ,
20+ pub args : bool ,
21+ }
22+
1723impl TagSpec {
1824 pub fn load_builtin_specs ( ) -> Result < HashMap < String , TagSpec > > {
1925 let specs_dir = Path :: new ( env ! ( "CARGO_MANIFEST_DIR" ) ) . join ( "tagspecs" ) ;
Original file line number Diff line number Diff line change 11[django .template .defaulttags .if ]
22type = " block"
33closing = " endif"
4- intermediates = [" else" , " elif" ]
4+
5+ [[django .template .defaulttags .if .intermediates ]]
6+ name = " elif"
7+ args = true
8+
9+ [[django .template .defaulttags .if .intermediates ]]
10+ name = " else"
11+ args = false
512
613[[django .template .defaulttags .if .args ]]
714name = " condition"
@@ -10,7 +17,10 @@ required = true
1017[django .template .defaulttags .for ]
1118type = " block"
1219closing = " endfor"
13- intermediates = [" empty" ]
20+
21+ [[django .template .defaulttags .for .intermediates ]]
22+ name = " empty"
23+ args = false
1424
1525[[django .template .defaulttags .for .args ]]
1626name = " {item}"
You can’t perform that action at this time.
0 commit comments