@@ -39,27 +39,27 @@ diagblockshift(a::AbstractFill{Int},b::Vcat{Int,1,<:Tuple{V1,<:AbstractFill{Int}
39
39
40
40
41
41
function diagblockshift (a:: Vcat{Int,1,<:Tuple{V1,<:AbstractFill{Int}}} ,b:: AbstractFill{Int} ) where V1 <: AbstractVector{Int}
42
- @assert getindex_value (a. arrays [end ]) == getindex_value (b)
43
- isempty (a. arrays [1 ]) && return diagblockshift (a. arrays [2 ],b)
42
+ @assert getindex_value (a. args [end ]) == getindex_value (b)
43
+ isempty (a. args [1 ]) && return diagblockshift (a. args [2 ],b)
44
44
a1, b1 = a[1 ],b[1 ]
45
- a1 == b1 && return diagblockshift (Vcat (a. arrays [1 ][2 : end ],a. arrays [2 ]),b)
46
- a1 > b1 && length (a. arrays [1 ]) == 1 && return 0
47
- a1 > b1 && return max (0 ,- 1 + diagblockshift (flatten (([a1- b1;a. arrays [1 ][2 : end ]],a. arrays [2 ]),b)))
48
- a1 < b1 && length (a. arrays [1 ]) == 1 && return 1
45
+ a1 == b1 && return diagblockshift (Vcat (a. args [1 ][2 : end ],a. args [2 ]),b)
46
+ a1 > b1 && length (a. args [1 ]) == 1 && return 0
47
+ a1 > b1 && return max (0 ,- 1 + diagblockshift (flatten (([a1- b1;a. args [1 ][2 : end ]],a. args [2 ]),b)))
48
+ a1 < b1 && length (a. args [1 ]) == 1 && return 1
49
49
# a1 < b1 &&
50
- return 1 + diagblockshift (Vcat (a. arrays [1 ][2 : end ],a. arrays [2 ]),Vcat ([b1- a1],b))
50
+ return 1 + diagblockshift (Vcat (a. args [1 ][2 : end ],a. args [2 ]),Vcat ([b1- a1],b))
51
51
end
52
52
53
53
function diagblockshift (a:: Vcat{Int,1,<:Tuple{V1,<:AbstractFill{Int}}} ,
54
54
b:: Vcat{Int,1,<:Tuple{V2,<:AbstractFill{Int}}} ) where {V1 <: AbstractVector{Int} ,V2 <: AbstractVector{Int} }
55
- isempty (a. arrays [1 ]) && return diagblockshift (a. arrays [2 ],b)
56
- isempty (b. arrays [1 ]) && return diagblockshift (a,b. arrays [2 ])
55
+ isempty (a. args [1 ]) && return diagblockshift (a. args [2 ],b)
56
+ isempty (b. args [1 ]) && return diagblockshift (a,b. args [2 ])
57
57
a1, b1 = a[1 ],b[1 ]
58
- a1 == b1 && return diagblockshift (Vcat (a. arrays [1 ][2 : end ],a. arrays [2 ]),Vcat (b. arrays [1 ][2 : end ],b. arrays [2 ]))
59
- a1 > b1 && return max (0 ,- 1 + diagblockshift (Vcat ([a1- b1;a. arrays [1 ][2 : end ]],a. arrays [2 ]),
60
- Vcat (b. arrays [1 ][2 : end ],b. arrays [2 ])))
58
+ a1 == b1 && return diagblockshift (Vcat (a. args [1 ][2 : end ],a. args [2 ]),Vcat (b. args [1 ][2 : end ],b. args [2 ]))
59
+ a1 > b1 && return max (0 ,- 1 + diagblockshift (Vcat ([a1- b1;a. args [1 ][2 : end ]],a. args [2 ]),
60
+ Vcat (b. args [1 ][2 : end ],b. args [2 ])))
61
61
# a1 < b1 &&
62
- return 1 + diagblockshift (Vcat (a. arrays [1 ][2 : end ],a. arrays [2 ]),Vcat ([b1- a1;b. arrays [1 ][2 : end ]],b. arrays [2 ]))
62
+ return 1 + diagblockshift (Vcat (a. args [1 ][2 : end ],a. args [2 ]),Vcat ([b1- a1;b. args [1 ][2 : end ]],b. args [2 ]))
63
63
end
64
64
65
65
0 commit comments