File tree Expand file tree Collapse file tree 3 files changed +12
-4
lines changed
Expand file tree Collapse file tree 3 files changed +12
-4
lines changed Original file line number Diff line number Diff line change 11name = " MemoryViews"
22uuid = " a791c907-b98b-4e44-8f4d-e4c2362c6b2f"
3- version = " 0.3.0 "
3+ version = " 0.3.1 "
44authors = [" Jakob Nybo Nissen <jakobnybonissen@gmail.com>" ]
55
66[weakdeps ]
Original file line number Diff line number Diff line change @@ -328,14 +328,17 @@ function Base.reverse!(mem::MutableMemoryView)
328328 mem
329329end
330330
331- # TODO : No need to copy
332331function Base. reverse (mem:: MemoryView )
333- cp = MutableMemoryView (unsafe, copy ( mem) )
332+ cp = similar ( mem)
334333 stop = length (cp) + 1
335334 @inbounds for i in 1 : length (cp)
336335 cp[i] = mem[stop - i]
337336 end
338- cp
337+ return if mem isa MutableMemoryView
338+ cp
339+ else
340+ ImmutableMemoryView (cp)
341+ end
339342end
340343
341344struct ReverseMemoryView{T}
Original file line number Diff line number Diff line change @@ -388,10 +388,15 @@ end
388388 @test reverse! (MemoryView (copy (v))) == MemoryView (reverse (v))
389389 mem = MemoryView (v)
390390 rev = reverse (mem)
391+ @test typeof (rev) == typeof (mem)
391392 @test rev. ref != mem. ref
392393 @test rev == reverse (v)
393394 @test_throws Exception reverse! (ImmutableMemoryView (v))
394395 end
396+ mem = MemoryView (" abcd" )
397+ rev = reverse (mem)
398+ @test rev == b " dcba"
399+ @test rev isa ImmutableMemoryView{UInt8}
395400 end
396401
397402 @testset " Cmp" begin
You can’t perform that action at this time.
0 commit comments