Skip to content

Commit 4f024a7

Browse files
committed
Change reduce{D}(...) to reducedim{D}(...) to extend Base.reducedim
1 parent d262029 commit 4f024a7

File tree

2 files changed

+10
-10
lines changed

2 files changed

+10
-10
lines changed

src/StaticArrays.jl

Lines changed: 6 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -3,12 +3,12 @@ __precompile__()
33
module StaticArrays
44

55
import Base: @pure, @propagate_inbounds, getindex, setindex!, size, similar,
6-
length, convert, promote_op, map, map!, reduce, mapreduce,
7-
broadcast, broadcast!, conj, transpose, ctranspose, hcat, vcat,
8-
ones, zeros, eye, one, cross, vecdot, reshape, fill, fill!, det,
9-
inv, eig, eigvals, trace, vecnorm, norm, dot, diagm, sum, prod,
10-
count, any, all, sumabs, sumabs2, minimum, maximum, extrema, mean,
11-
copy, diff
6+
length, convert, promote_op, map, map!, reduce, reducedim,
7+
mapreduce, broadcast, broadcast!, conj, transpose, ctranspose,
8+
hcat, vcat, ones, zeros, eye, one, cross, vecdot, reshape, fill,
9+
fill!, det, inv, eig, eigvals, trace, vecnorm, norm, dot, diagm,
10+
sum, diff, prod, count, any, all, sumabs, sumabs2, minimum,
11+
maximum, extrema, mean, copy
1212

1313
export StaticScalar, StaticArray, StaticVector, StaticMatrix
1414
export Scalar, SArray, SVector, SMatrix

src/mapreduce.jl

Lines changed: 4 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -90,13 +90,13 @@ end
9090
end
9191
end
9292

93-
@generated function reduce{D}(op, a::StaticArray, ::Type{Val{D}})
93+
@generated function reducedim{D}(op, a::StaticArray, ::Type{Val{D}})
9494
S = size(a)
9595
if S[D] == 1
9696
return :(return a)
9797
else
9898
N = ndims(a)
99-
Snew = ([n==D ? 1:S[n] for n = 1:N]...)
99+
Snew = ([n==D ? 1 : S[n] for n = 1:N]...)
100100
newtype = similar_type(a, Snew)
101101

102102
exprs = Array{Expr}(Snew)
@@ -131,8 +131,8 @@ end
131131
@inline sumabs2{T}(a::StaticArray{T}) = mapreduce(abs2, +, zero(T), a)
132132
@inline minimum(a::StaticArray) = reduce(min, a) # base has mapreduce(idenity, scalarmin, a)
133133
@inline maximum(a::StaticArray) = reduce(max, a) # base has mapreduce(idenity, scalarmax, a)
134-
@inline minimum{D}(a::StaticArray, dim::Type{Val{D}}) = reduce(min, a, dim)
135-
@inline maximum{D}(a::StaticArray, dim::Type{Val{D}}) = reduce(max, a, dim)
134+
@inline minimum{D}(a::StaticArray, dim::Type{Val{D}}) = reducedim(min, a, dim)
135+
@inline maximum{D}(a::StaticArray, dim::Type{Val{D}}) = reducedim(max, a, dim)
136136

137137
@generated function diff{D}(a::StaticArray, ::Type{Val{D}}=Val{1})
138138
S = size(a)

0 commit comments

Comments
 (0)