@@ -27,31 +27,31 @@ pub(crate) enum RewriteType<'alloc: 'data, 'data> {
2727 /// `cfg.metafn("cfg.base")`
2828 MetaFn ,
2929
30- /// `window.location ` -> cfg.wraplocation (window)
30+ /// `window.attr ` -> cfg.wrapattr (window)
3131 WrapGet {
32- ident : Atom < ' data > ,
33- propspan : Span ,
34- enclose : bool ,
32+ ident : Atom < ' data > ,
33+ propspan : Span ,
34+ enclose : bool ,
3535 } ,
36- /// `window["location "]` -> cfg.wrapgetcomputed(window, "location ")
36+ /// `window["attr "]` -> cfg.wrapgetcomputed(window, "attr ")
3737 WrapGetComputed {
38- leftspan : Span ,
39- propspan : Span ,
40- enclose : bool ,
38+ leftspan : Span ,
39+ propspan : Span ,
40+ enclose : bool ,
4141 } ,
42- /// `window.location ` -> cfg.wraplocation (window)
42+ /// `window.attr ` -> cfg.wrapattr (window)
4343 WrapSet {
44- ident : Atom < ' data > ,
45- propspan : Span ,
46- leftspan : Span ,
47- rightspan : Span ,
44+ ident : Atom < ' data > ,
45+ propspan : Span ,
46+ leftspan : Span ,
47+ rightspan : Span ,
4848 } ,
49- /// `cfg.wrapcomputedsetfn(window, "location ", t)`
49+ /// `cfg.wrapcomputedsetfn(window, "attr ", t)`
5050 WrapSetComputed {
51- propspan : Span ,
52- leftspan : Span ,
53- rightspan : Span ,
54- } ,
51+ propspan : Span ,
52+ leftspan : Span ,
53+ rightspan : Span ,
54+ } ,
5555 // dead code only if debug is disabled
5656 #[ allow( dead_code) ]
5757 /// `$scramerr(name)`
@@ -84,6 +84,7 @@ pub(crate) enum RewriteType<'alloc: 'data, 'data> {
8484 Delete ,
8585}
8686
87+ #[ derive( Debug ) ]
8788pub ( crate ) struct Rewrite < ' alloc , ' data > {
8889 span : Span ,
8990 ty : RewriteType < ' alloc , ' data > ,
@@ -122,59 +123,82 @@ impl<'alloc: 'data, 'data> RewriteType<'alloc, 'data> {
122123 change!( span!( end) , WrapFnRight { enclose } ) ,
123124 ] ,
124125 Self :: WrapGet {
125- ident,
126- propspan,
127- enclose,
126+ ident,
127+ propspan,
128+ enclose,
128129 } => smallvec ! [
129- change!( span!( start) , WrapGetLeft {
130- ident,
131- enclose,
132- } ) ,
130+ change!( span!( start) , WrapGetLeft { ident, enclose } ) ,
133131 change!( propspan, Delete ) ,
134- change!( Span :: new( propspan. start-1 , propspan. start) , Delete ) ,
135- change!( Span :: new( propspan. end, propspan. end) , WrapGetRight {
136- enclose,
137- } ) ,
132+ change!( Span :: new( propspan. start - 1 , propspan. start) , Delete ) ,
133+ change!(
134+ Span :: new( propspan. end, propspan. end) ,
135+ WrapGetRight { enclose }
136+ ) ,
138137 ] ,
139- Self :: WrapGetComputed { leftspan, propspan, enclose } => smallvec ! [
140- change!( span!( start) , WrapGetComputedLeft {
141- enclose
142- } ) ,
138+ Self :: WrapGetComputed {
139+ leftspan,
140+ propspan,
141+ enclose,
142+ } => smallvec ! [
143+ change!( span!( start) , WrapGetComputedLeft { enclose } ) ,
143144 // replace the bracket with ,
144- change!( Span :: new( leftspan. end, propspan. start) , Replace { text: "," } ) ,
145+ change!(
146+ Span :: new( leftspan. end, propspan. start) ,
147+ Replace { text: "," }
148+ ) ,
145149 // replace the other bracket with )
146- change!( Span :: new( propspan. end, propspan. end + 1 ) , ClosingParen { semi: false , replace: true } ) ,
147-
150+ change!(
151+ Span :: new( propspan. end, propspan. end + 1 ) ,
152+ ClosingParen {
153+ semi: false ,
154+ replace: true
155+ }
156+ ) ,
148157 ] ,
149- Self :: WrapSet { ident, propspan, leftspan, rightspan } => smallvec ! [
150- change!( span!( start) , WrapSet {
151- ident,
152- propspan,
153- } ) ,
154- change!( propspan, Delete ) ,
155- change!( Span :: new( leftspan. end, rightspan. start) , Replace { text: "," } ) ,
156- change!(
158+ Self :: WrapSet {
159+ ident,
160+ propspan,
161+ leftspan,
162+ rightspan,
163+ } => smallvec ! [
164+ change!( span!( start) , WrapSet { ident, propspan } ) ,
165+ change!( propspan, Delete ) ,
166+ change!(
167+ Span :: new( leftspan. end, rightspan. start) ,
168+ Replace { text: "," }
169+ ) ,
170+ change!(
157171 span!( end) ,
158172 ClosingParen {
159173 semi: false ,
160174 replace: true
161175 }
162176 )
163- ] ,
164- RewriteType :: WrapSetComputed { leftspan, rightspan, propspan } => smallvec ! [
165- change!( span!( start) , WrapSetComputed ) ,
166- // replace the bracket with ,
167- change!( Span :: new( leftspan. end, propspan. start) , Replace { text: "," } ) ,
177+ ] ,
178+ RewriteType :: WrapSetComputed {
179+ leftspan,
180+ rightspan,
181+ propspan,
182+ } => smallvec ! [
183+ change!( span!( start) , WrapSetComputed ) ,
184+ // replace the bracket with ,
185+ change!(
186+ Span :: new( leftspan. end, propspan. start) ,
187+ Replace { text: "," }
188+ ) ,
168189 // replace the other bracket with another ,
169- change!( Span :: new( propspan. end, rightspan. start) , Replace { text: "," } ) ,
190+ change!(
191+ Span :: new( propspan. end, rightspan. start) ,
192+ Replace { text: "," }
193+ ) ,
170194 change!(
171195 span!( end) ,
172196 ClosingParen {
173197 semi: false ,
174198 replace: true
175199 }
176200 )
177- ] ,
201+ ] ,
178202 Self :: SetRealmFn => smallvec ! [ change!( span, SetRealmFn ) ] ,
179203 Self :: ImportFn => smallvec ! [ change!( span, ImportFn ) ] ,
180204 Self :: MetaFn => smallvec ! [ change!( span, MetaFn ) ] ,
0 commit comments