mirror of
https://github.com/servo/servo.git
synced 2025-07-24 15:50:21 +01:00
Replace remaining usage of deprecated Range::step_by
… which is being removed in https://github.com/rust-lang/rust/pull/43012
This commit is contained in:
parent
42e551f606
commit
86293c3b39
2 changed files with 21 additions and 6 deletions
|
@ -962,13 +962,29 @@ impl InlineFlow {
|
|||
Some(ref runs) => runs[run_count - run_idx - 1], // reverse order for RTL runs
|
||||
None => (line.range, bidi::Level::ltr())
|
||||
};
|
||||
|
||||
struct MaybeReverse<I> {
|
||||
iter: I,
|
||||
reverse: bool,
|
||||
}
|
||||
|
||||
impl<I: DoubleEndedIterator> Iterator for MaybeReverse<I> {
|
||||
type Item = I::Item;
|
||||
|
||||
fn next(&mut self) -> Option<I::Item> {
|
||||
if self.reverse {
|
||||
self.iter.next_back()
|
||||
} else {
|
||||
self.iter.next()
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
// If the bidi embedding direction is opposite the layout direction, lay out this
|
||||
// run in reverse order.
|
||||
let reverse = level.is_ltr() != is_ltr;
|
||||
let fragment_indices = if reverse {
|
||||
(range.end().get() - 1..range.begin().get() - 1).step_by(-1)
|
||||
} else {
|
||||
(range.begin().get()..range.end().get()).step_by(1)
|
||||
let fragment_indices = MaybeReverse {
|
||||
iter: range.begin().get()..range.end().get(),
|
||||
reverse: level.is_ltr() != is_ltr,
|
||||
};
|
||||
|
||||
for fragment_index in fragment_indices {
|
||||
|
|
|
@ -8,7 +8,6 @@
|
|||
#![feature(conservative_impl_trait)]
|
||||
#![feature(nonzero)]
|
||||
#![feature(raw)]
|
||||
#![feature(step_by)]
|
||||
|
||||
extern crate app_units;
|
||||
extern crate atomic_refcell;
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue