changeset 1145:4da66d6d7bed refactor/grids

Merge bugfix/lazy_tensors/lazyfunctionarray
author Jonatan Werpers <jonatan@werpers.com>
date Wed, 19 Oct 2022 23:14:00 +0200
parents cfe6a09974fb (current diff) 6fd97b5ed3e5 (diff)
children 31041ef8092a
files
diffstat 2 files changed, 4 insertions(+), 1 deletions(-) [+]
line wrap: on
line diff
--- a/src/LazyTensors/lazy_array.jl	Wed Oct 19 22:40:11 2022 +0200
+++ b/src/LazyTensors/lazy_array.jl	Wed Oct 19 23:14:00 2022 +0200
@@ -28,7 +28,7 @@
 export LazyFunctionArray
 
 function LazyFunctionArray(f::F, size::NTuple{D,Int}) where {F<:Function,D}
-    T = typeof(f(ones(D)...))
+    T = typeof(f(ones(Int, D)...))
     return LazyFunctionArray{F,T,D}(f,size)
 end
 
--- a/test/LazyTensors/lazy_array_test.jl	Wed Oct 19 22:40:11 2022 +0200
+++ b/test/LazyTensors/lazy_array_test.jl	Wed Oct 19 23:14:00 2022 +0200
@@ -102,4 +102,7 @@
     @test_throws BoundsError LazyFunctionArray((i,j)->i*j, (3,2))[4,2]
     @test_throws BoundsError LazyFunctionArray((i,j)->i*j, (3,2))[2,3]
 
+    # Test that the constructor works with a restrictive function
+    f(x::Vararg{Int}) = sum(x)
+    @test LazyFunctionArray(f,(3,4)) isa LazyFunctionArray
 end