File tree Expand file tree Collapse file tree 2 files changed +11
-3
lines changed
Expand file tree Collapse file tree 2 files changed +11
-3
lines changed Original file line number Diff line number Diff line change @@ -256,8 +256,12 @@ impl<L: Language> SyntaxNode<L> {
256256 self . raw . detach ( )
257257 }
258258
259- pub fn splice_children ( & self , to_delete : Range < usize > , to_insert : Vec < SyntaxElement < L > > ) {
260- let to_insert = to_insert. into_iter ( ) . map ( cursor:: SyntaxElement :: from) . collect :: < Vec < _ > > ( ) ;
259+ pub fn splice_children < I : IntoIterator < Item = SyntaxElement < L > > > (
260+ & self ,
261+ to_delete : Range < usize > ,
262+ to_insert : I ,
263+ ) {
264+ let to_insert = to_insert. into_iter ( ) . map ( cursor:: SyntaxElement :: from) ;
261265 self . raw . splice_children ( to_delete, to_insert)
262266 }
263267}
Original file line number Diff line number Diff line change @@ -806,7 +806,11 @@ impl SyntaxNode {
806806 } )
807807 }
808808
809- pub fn splice_children ( & self , to_delete : Range < usize > , to_insert : Vec < SyntaxElement > ) {
809+ pub fn splice_children < I : IntoIterator < Item = SyntaxElement > > (
810+ & self ,
811+ to_delete : Range < usize > ,
812+ to_insert : I ,
813+ ) {
810814 assert ! ( self . data( ) . mutable, "immutable tree: {}" , self ) ;
811815 for ( i, child) in self . children_with_tokens ( ) . enumerate ( ) {
812816 if to_delete. contains ( & i) {
You can’t perform that action at this time.
0 commit comments