We read every piece of feedback, and take your input very seriously.
To see all available qualifiers, see our documentation.
There was an error while loading. Please reload this page.
1 parent 2b4ad23 commit 9e07645Copy full SHA for 9e07645
deque/deque.mbt
@@ -1953,13 +1953,11 @@ pub fn[A] Deque::flatten(self : Deque[Deque[A]]) -> Deque[A] {
1953
}
1954
let mut i = 0
1955
for deque in self {
1956
- let cap = deque.buf.length()
1957
- let head_len = cap - deque.head
1958
- target.buf.unsafe_blit(i, deque.buf, deque.head, head_len)
1959
- if head_len < deque.len {
1960
- target.buf.unsafe_blit(i + head_len, deque.buf, 0, deque.len - head_len)
1961
- }
1962
- i += deque.len
+ let (front, end) = deque.as_views()
+ target.buf.unsafe_blit(i, deque.buf, front.start_offset(), front.length())
+ i += front.length()
+ target.buf.unsafe_blit(i, deque.buf, end.start_offset(), end.length())
+ i += end.length()
1963
1964
target
1965
0 commit comments