File tree 1 file changed +24
-0
lines changed
1 file changed +24
-0
lines changed Original file line number Diff line number Diff line change @@ -150,3 +150,27 @@ impl<'self> Iterator<&'self ComponentValue> for SkipWhitespaceIterator<'self> {
150
150
None
151
151
}
152
152
}
153
+
154
+
155
+ pub trait ConsumeSkipWhitespaceIterable {
156
+ pub fn consume_skip_whitespace ( self ) -> ConsumeSkipWhitespaceIterator ;
157
+ }
158
+
159
+ impl ConsumeSkipWhitespaceIterable for ~[ ComponentValue ] {
160
+ pub fn consume_skip_whitespace ( self ) -> ConsumeSkipWhitespaceIterator {
161
+ ConsumeSkipWhitespaceIterator { iter : self . consume_iter ( ) }
162
+ }
163
+ }
164
+
165
+ struct ConsumeSkipWhitespaceIterator {
166
+ iter : vec:: ConsumeIterator < ComponentValue > ,
167
+ }
168
+
169
+ impl Iterator < ComponentValue > for ConsumeSkipWhitespaceIterator {
170
+ fn next ( & mut self ) -> Option < ComponentValue > {
171
+ for component_value in self . iter {
172
+ if component_value != WhiteSpace { return Some ( component_value) }
173
+ }
174
+ None
175
+ }
176
+ }
You can’t perform that action at this time.
0 commit comments