@@ -13,21 +13,6 @@ pub struct OffsetContext {
1313
1414pub enum ContextKind {
1515 TemplateReference ( String ) ,
16- TemplateTag {
17- name : String ,
18- args : Vec < String > ,
19- } ,
20- TemplateVariable {
21- variable : String ,
22- filters : Vec < String > ,
23- } ,
24- TemplateFilter {
25- variable : String ,
26- name : String ,
27- args : Option < String > ,
28- } ,
29- TemplateComment ( String ) ,
30- TemplateText ,
3116 None ,
3217}
3318
@@ -49,30 +34,11 @@ impl OffsetContext {
4934
5035 let span = node. full_span ( ) ;
5136 let context = match node {
52- Node :: Tag { name, bits, .. } => {
53- if Self :: is_template_reference_tag ( name) {
54- if let Some ( template_name) = Self :: extract_template_name ( bits) {
55- ContextKind :: TemplateReference ( template_name)
56- } else {
57- ContextKind :: TemplateTag {
58- name : name. clone ( ) ,
59- args : bits. clone ( ) ,
60- }
61- }
62- } else {
63- ContextKind :: TemplateTag {
64- name : name. clone ( ) ,
65- args : bits. clone ( ) ,
66- }
67- }
37+ Node :: Tag { name, bits, .. } if Self :: is_loader_tag ( name) => {
38+ Self :: extract_template_name ( bits)
39+ . map_or ( ContextKind :: None , ContextKind :: TemplateReference )
6840 }
69- Node :: Variable { var, filters, .. } => ContextKind :: TemplateVariable {
70- variable : var. clone ( ) ,
71- filters : filters. clone ( ) ,
72- } ,
73- Node :: Comment { content, .. } => ContextKind :: TemplateComment ( content. clone ( ) ) ,
74- Node :: Text { .. } => ContextKind :: TemplateText ,
75- Node :: Error { .. } => continue ,
41+ _ => ContextKind :: None ,
7642 } ;
7743
7844 return Self {
@@ -91,8 +57,8 @@ impl OffsetContext {
9157 }
9258 }
9359
94- fn is_template_reference_tag ( tag : & str ) -> bool {
95- matches ! ( tag , "extends" | "include" )
60+ fn is_loader_tag ( tag_name : & str ) -> bool {
61+ matches ! ( tag_name , "extends" | "include" )
9662 }
9763
9864 fn extract_template_name ( bits : & [ String ] ) -> Option < String > {
0 commit comments