|
1 | 1 | struct BlockMap{T,
|
2 | 2 | As<:LinearMapTupleOrVector,
|
3 |
| - Rs<:Tuple{Vararg{Int}}, |
4 |
| - Rranges<:Vector{UnitRange{Int}}, |
5 |
| - Cranges<:Vector{UnitRange{Int}}} <: LinearMap{T} |
| 3 | + Rs<:Tuple{Vararg{Int}}} <: LinearMap{T} |
6 | 4 | maps::As
|
7 | 5 | rows::Rs
|
8 |
| - rowranges::Rranges |
9 |
| - colranges::Cranges |
| 6 | + rowranges::Vector{UnitRange{Int}} |
| 7 | + colranges::Vector{UnitRange{Int}} |
10 | 8 | function BlockMap{T,As,Rs}(maps::As, rows::Rs) where
|
11 | 9 | {T, As<:LinearMapTupleOrVector, Rs<:Tuple{Vararg{Int}}}
|
12 | 10 | for TA in Base.Generator(eltype, maps)
|
13 | 11 | promote_type(T, TA) == T ||
|
14 | 12 | error("eltype $TA cannot be promoted to $T in BlockMap constructor")
|
15 | 13 | end
|
16 | 14 | rowranges, colranges = rowcolranges(maps, rows)
|
17 |
| - Rranges, Cranges = typeof(rowranges), typeof(colranges) |
18 |
| - return new{T, As, Rs, Rranges, Cranges}(maps, rows, rowranges, colranges) |
| 15 | + return new{T, As, Rs}(maps, rows, rowranges, colranges) |
19 | 16 | end
|
20 | 17 | end
|
21 | 18 |
|
@@ -399,20 +396,18 @@ end
|
399 | 396 | ############
|
400 | 397 | # BlockDiagonalMap
|
401 | 398 | ############
|
402 |
| -struct BlockDiagonalMap{T, |
403 |
| - As<:LinearMapTupleOrVector, |
404 |
| - Ranges<:Vector{UnitRange{Int}}} <: LinearMap{T} |
| 399 | +struct BlockDiagonalMap{T, As<:LinearMapTupleOrVector} <: LinearMap{T} |
405 | 400 | maps::As
|
406 |
| - rowranges::Ranges |
407 |
| - colranges::Ranges |
| 401 | + rowranges::Vector{UnitRange{Int}} |
| 402 | + colranges::Vector{UnitRange{Int}} |
408 | 403 | function BlockDiagonalMap{T, As}(maps::As) where {T, As<:LinearMapTupleOrVector}
|
409 | 404 | for TA in Base.Generator(eltype, maps)
|
410 | 405 | promote_type(T, TA) == T ||
|
411 | 406 | error("eltype $TA cannot be promoted to $T in BlockDiagonalMap constructor")
|
412 | 407 | end
|
413 | 408 | rowranges = _getranges(maps, 1)
|
414 | 409 | colranges = _getranges(maps, 2)
|
415 |
| - return new{T, As, typeof(rowranges)}(maps, rowranges, colranges) |
| 410 | + return new{T, As}(maps, rowranges, colranges) |
416 | 411 | end
|
417 | 412 | end
|
418 | 413 |
|
|
0 commit comments