Mercurial > repos > public > sbplib_julia
diff src/LazyTensors/lazy_tensor_operations.jl @ 449:14d60de71b72 feature/inflated_tensormapping
Change to concrete fields in the type
author | Jonatan Werpers <jonatan@werpers.com> |
---|---|
date | Mon, 19 Oct 2020 21:14:46 +0200 |
parents | 912ae510dec9 |
children | ac6d22570a08 |
line wrap: on
line diff
--- a/src/LazyTensors/lazy_tensor_operations.jl Mon Oct 19 21:04:51 2020 +0200 +++ b/src/LazyTensors/lazy_tensor_operations.jl Mon Oct 19 21:14:46 2020 +0200 @@ -166,9 +166,9 @@ apply(tmi::IdentityMapping{T,D}, v::AbstractArray{T,D}, I::Vararg{Any,D}) where {T,D} = v[I...] apply_transpose(tmi::IdentityMapping{T,D}, v::AbstractArray{T,D}, I::Vararg{Any,D}) where {T,D} = v[I...] -struct InflatedTensorMapping{T,R,D,D_before,R_middle,D_middle,D_after} <: TensorMapping{T,R,D} +struct InflatedTensorMapping{T,R,D,D_before,R_middle,D_middle,D_after, TM<:TensorMapping{T,R_middle,D_middle}} <: TensorMapping{T,R,D} before::IdentityMapping{T,D_before} - tm::TensorMapping{T,R_middle,D_middle} + tm::TM after::IdentityMapping{T,D_after} function InflatedTensorMapping(before, tm::TensorMapping{T}, after) where T @@ -181,7 +181,7 @@ D_middle = domain_dim(tm) D_after = domain_dim(after) D = D_before+D_middle+D_after - return new{T,R,D,D_before,R_middle,D_middle,D_after}(before, tm, after) + return new{T,R,D,D_before,R_middle,D_middle,D_after, typeof(tm)}(before, tm, after) end end