Skip to content

Commit 3f162f3

Browse files
committed
Cleanup
1 parent 6dfe480 commit 3f162f3

File tree

2 files changed

+17
-161
lines changed

2 files changed

+17
-161
lines changed

src/fillarrays/kroneckerarray.jl

Lines changed: 0 additions & 139 deletions
Original file line numberDiff line numberDiff line change
@@ -174,142 +174,3 @@ function Base.broadcasted(
174174
# TODO: Promote the element types and axes.
175175
return b
176176
end
177-
178-
## function Base.:*(a::Number, b::EyeKronecker)
179-
## return b.a ⊗ (a * b.b)
180-
## end
181-
## function Base.:*(a::Number, b::KroneckerEye)
182-
## return (a * b.a) ⊗ b.b
183-
## end
184-
## function Base.:*(a::Number, b::EyeEye)
185-
## return error("Can't multiply `Eye ⊗ Eye` by a number.")
186-
## end
187-
## function Base.:*(a::EyeKronecker, b::Number)
188-
## return a.a ⊗ (a.b * b)
189-
## end
190-
## function Base.:*(a::KroneckerEye, b::Number)
191-
## return (a.a * b) ⊗ a.b
192-
## end
193-
## function Base.:*(a::EyeEye, b::Number)
194-
## return error("Can't multiply `Eye ⊗ Eye` by a number.")
195-
## end
196-
##
197-
## function Base.:-(a::EyeKronecker)
198-
## return a.a ⊗ (-a.b)
199-
## end
200-
## function Base.:-(a::KroneckerEye)
201-
## return (-a.a) ⊗ a.b
202-
## end
203-
## function Base.:-(a::EyeEye)
204-
## return error("Can't multiply `Eye ⊗ Eye` by a number.")
205-
## end
206-
##
207-
## for op in (:+, :-)
208-
## @eval begin
209-
## function Base.$op(a::EyeKronecker, b::EyeKronecker)
210-
## if a.a ≠ b.a
211-
## return throw(
212-
## ArgumentError(
213-
## "KroneckerArray addition is only supported when the first or secord arguments match.",
214-
## ),
215-
## )
216-
## end
217-
## return a.a ⊗ $op(a.b, b.b)
218-
## end
219-
## function Base.$op(a::KroneckerEye, b::KroneckerEye)
220-
## if a.b ≠ b.b
221-
## return throw(
222-
## ArgumentError(
223-
## "KroneckerArray addition is only supported when the first or secord arguments match.",
224-
## ),
225-
## )
226-
## end
227-
## return $op(a.a, b.a) ⊗ a.b
228-
## end
229-
## function Base.$op(a::EyeEye, b::EyeEye)
230-
## if a.b ≠ b.b
231-
## return throw(
232-
## ArgumentError(
233-
## "KroneckerArray addition is only supported when the first or secord arguments match.",
234-
## ),
235-
## )
236-
## end
237-
## return $op(a.a, b.a) ⊗ a.b
238-
## end
239-
## end
240-
## end
241-
##
242-
## function Base.map!(f::typeof(identity), dest::EyeKronecker, src::EyeKronecker)
243-
## map!(f, dest.b, src.b)
244-
## return dest
245-
## end
246-
## function Base.map!(f::typeof(identity), dest::KroneckerEye, src::KroneckerEye)
247-
## map!(f, dest.a, src.a)
248-
## return dest
249-
## end
250-
## function Base.map!(::typeof(identity), dest::EyeEye, src::EyeEye)
251-
## return error("Can't write in-place.")
252-
## end
253-
## for f in [:+, :-]
254-
## @eval begin
255-
## function Base.map!(::typeof($f), dest::EyeKronecker, a::EyeKronecker, b::EyeKronecker)
256-
## if dest.a ≠ a.a ≠ b.a
257-
## throw(
258-
## ArgumentError(
259-
## "KroneckerArray addition is only supported when the first or second arguments match.",
260-
## ),
261-
## )
262-
## end
263-
## map!($f, dest.b, a.b, b.b)
264-
## return dest
265-
## end
266-
## function Base.map!(::typeof($f), dest::KroneckerEye, a::KroneckerEye, b::KroneckerEye)
267-
## if dest.b ≠ a.b ≠ b.b
268-
## throw(
269-
## ArgumentError(
270-
## "KroneckerArray addition is only supported when the first or second arguments match.",
271-
## ),
272-
## )
273-
## end
274-
## map!($f, dest.a, a.a, b.a)
275-
## return dest
276-
## end
277-
## function Base.map!(::typeof($f), dest::EyeEye, a::EyeEye, b::EyeEye)
278-
## return error("Can't write in-place.")
279-
## end
280-
## end
281-
## end
282-
## function Base.map!(f::typeof(-), dest::EyeKronecker, a::EyeKronecker)
283-
## map!(f, dest.b, a.b)
284-
## return dest
285-
## end
286-
## function Base.map!(f::typeof(-), dest::KroneckerEye, a::KroneckerEye)
287-
## map!(f, dest.a, a.a)
288-
## return dest
289-
## end
290-
## function Base.map!(f::typeof(-), dest::EyeEye, a::EyeEye)
291-
## return error("Can't write in-place.")
292-
## end
293-
## function Base.map!(f::Base.Fix1{typeof(*),<:Number}, dest::EyeKronecker, a::EyeKronecker)
294-
## map!(f, dest.b, a.b)
295-
## return dest
296-
## end
297-
## function Base.map!(f::Base.Fix1{typeof(*),<:Number}, dest::KroneckerEye, a::KroneckerEye)
298-
## map!(f, dest.a, a.a)
299-
## return dest
300-
## end
301-
## function Base.map!(f::Base.Fix1{typeof(*),<:Number}, dest::EyeEye, a::EyeEye)
302-
## return error("Can't write in-place.")
303-
## end
304-
## function Base.map!(f::Base.Fix2{typeof(*),<:Number}, dest::EyeKronecker, a::EyeKronecker)
305-
## map!(f, dest.b, a.b)
306-
## return dest
307-
## end
308-
## function Base.map!(f::Base.Fix2{typeof(*),<:Number}, dest::KroneckerEye, a::KroneckerEye)
309-
## map!(f, dest.a, a.a)
310-
## return dest
311-
## end
312-
## function Base.map!(f::Base.Fix2{typeof(*),<:Number}, dest::EyeEye, a::EyeEye)
313-
## return error("Can't write in-place.")
314-
## end
315-
##

src/kroneckerarray.jl

Lines changed: 17 additions & 22 deletions
Original file line numberDiff line numberDiff line change
@@ -389,25 +389,20 @@ for f in [:identity, :conj]
389389
end
390390
end
391391

392-
## using MapBroadcast: MapBroadcast, MapFunction
393-
## function Base.broadcasted(
394-
## style::KroneckerStyle,
395-
## f::MapFunction{typeof(*),<:Tuple{<:Number,MapBroadcast.Arg}},
396-
## a::KroneckerArray,
397-
## )
398-
## return broadcasted(style, Base.Fix1(*, f.args[1]), a)
399-
## end
400-
## function Base.broadcasted(
401-
## style::KroneckerStyle,
402-
## f::MapFunction{typeof(*),<:Tuple{MapBroadcast.Arg,<:Number}},
403-
## a::KroneckerArray,
404-
## )
405-
## return broadcasted(style, Base.Fix2(*, f.args[2]), a)
406-
## end
407-
## function Base.broadcasted(
408-
## style::KroneckerStyle,
409-
## f::MapFunction{typeof(/),<:Tuple{MapBroadcast.Arg,<:Number}},
410-
## a::KroneckerArray,
411-
## )
412-
## return broadcasted(style, Base.Fix2(/, f.args[2]), a)
413-
## end
392+
# Compatibility with MapBroadcast.jl.
393+
using MapBroadcast: MapBroadcast, MapFunction
394+
function Base.broadcasted(
395+
style::KroneckerStyle, f::MapFunction{typeof(*),<:Tuple{<:Number,MapBroadcast.Arg}}, a
396+
)
397+
return broadcasted(style, *, f.args[1], a)
398+
end
399+
function Base.broadcasted(
400+
style::KroneckerStyle, f::MapFunction{typeof(*),<:Tuple{MapBroadcast.Arg,<:Number}}, a
401+
)
402+
return broadcasted(style, *, a, f.args[2])
403+
end
404+
function Base.broadcasted(
405+
style::KroneckerStyle, f::MapFunction{typeof(/),<:Tuple{MapBroadcast.Arg,<:Number}}, a
406+
)
407+
return broadcasted(style, /, a, f.args[2])
408+
end

0 commit comments

Comments
 (0)