@@ -4,55 +4,57 @@ import Base: .+, .-, .*, ./, .//, .\, .%, .^, .<<, .>>, .==, .<, .>, .<=, .>=, !
4
4
Base. promote_op {Op,A<:StaticArray,T<:Number} (op:: Op , :: Type{A} , :: Type{T} ) = similar_type (A, promote_op (op, eltype (A), T))
5
5
Base. promote_op {Op,T<:Number,A<:StaticArray} (op:: Op , :: Type{T} , :: Type{A} ) = similar_type (A, promote_op (op, T, eltype (A)))
6
6
7
- @inline .- (a1:: StaticArray ) = broadcast (- , a1)
8
-
9
- @inline .+ (a1:: StaticArray , a2:: StaticArray ) = broadcast (+ , a1, a2)
10
- @inline .- (a1:: StaticArray , a2:: StaticArray ) = broadcast (- , a1, a2)
11
- @inline .* (a1:: StaticArray , a2:: StaticArray ) = broadcast (* , a1, a2)
12
- @inline ./ (a1:: StaticArray , a2:: StaticArray ) = broadcast (/ , a1, a2)
13
- @inline .// (a1:: StaticArray , a2:: StaticArray ) = broadcast (// , a1, a2)
14
- @inline .\ (a1:: StaticArray , a2:: StaticArray ) = broadcast (\ , a1, a2)
15
- @inline .% (a1:: StaticArray , a2:: StaticArray ) = broadcast (% , a1, a2)
16
- @inline .^ (a1:: StaticArray , a2:: StaticArray ) = broadcast (^ , a1, a2)
17
- @inline .<< (a1:: StaticArray , a2:: StaticArray ) = broadcast (<< , a1, a2)
18
- @inline .>> (a1:: StaticArray , a2:: StaticArray ) = broadcast (<< , a1, a2)
19
- @inline .== (a1:: StaticArray , a2:: StaticArray ) = broadcast (== , a1, a2)
20
- @inline .< (a1:: StaticArray , a2:: StaticArray ) = broadcast (< , a1, a2)
21
- @inline .> (a1:: StaticArray , a2:: StaticArray ) = broadcast (> , a1, a2)
22
- @inline .<= (a1:: StaticArray , a2:: StaticArray ) = broadcast (<= , a1, a2)
23
- @inline .>= (a1:: StaticArray , a2:: StaticArray ) = broadcast (>= , a1, a2)
24
-
25
- @inline .+ (a1:: StaticArray , a2:: Number ) = broadcast (+ , a1, a2)
26
- @inline .- (a1:: StaticArray , a2:: Number ) = broadcast (- , a1, a2)
27
- @inline .* (a1:: StaticArray , a2:: Number ) = broadcast (* , a1, a2)
28
- @inline ./ (a1:: StaticArray , a2:: Number ) = broadcast (/ , a1, a2)
29
- @inline .// (a1:: StaticArray , a2:: Number ) = broadcast (// , a1, a2)
30
- @inline .\ (a1:: StaticArray , a2:: Number ) = broadcast (\ , a1, a2)
31
- @inline .% (a1:: StaticArray , a2:: Number ) = broadcast (% , a1, a2)
32
- @inline .^ (a1:: StaticArray , a2:: Number ) = broadcast (^ , a1, a2)
33
- @inline .<< (a1:: StaticArray , a2:: Number ) = broadcast (<< , a1, a2)
34
- @inline .>> (a1:: StaticArray , a2:: Number ) = broadcast (<< , a1, a2)
35
- @inline .== (a1:: StaticArray , a2) = broadcast (== , a1, a2)
36
- @inline .< (a1:: StaticArray , a2) = broadcast (< , a1, a2)
37
- @inline .> (a1:: StaticArray , a2) = broadcast (> , a1, a2)
38
- @inline .<= (a1:: StaticArray , a2) = broadcast (<= , a1, a2)
39
- @inline .>= (a1:: StaticArray , a2) = broadcast (>= , a1, a2)
40
-
41
- @inline .+ (a1:: Number , a2:: StaticArray ) = broadcast (+ , a1, a2)
42
- @inline .- (a1:: Number , a2:: StaticArray ) = broadcast (- , a1, a2)
43
- @inline .* (a1:: Number , a2:: StaticArray ) = broadcast (* , a1, a2)
44
- @inline ./ (a1:: Number , a2:: StaticArray ) = broadcast (/ , a1, a2)
45
- @inline .// (a1:: Number , a2:: StaticArray ) = broadcast (// , a1, a2)
46
- @inline .\ (a1:: Number , a2:: StaticArray ) = broadcast (\ , a1, a2)
47
- @inline .% (a1:: Number , a2:: StaticArray ) = broadcast (% , a1, a2)
48
- @inline .^ (a1:: Number , a2:: StaticArray ) = broadcast (^ , a1, a2)
49
- @inline .<< (a1:: Number , a2:: StaticArray ) = broadcast (<< , a1, a2)
50
- @inline .>> (a1:: Number , a2:: StaticArray ) = broadcast (<< , a1, a2)
51
- @inline .== (a1, a2:: StaticArray ) = broadcast (== , a1, a2)
52
- @inline .< (a1, a2:: StaticArray ) = broadcast (< , a1, a2)
53
- @inline .> (a1, a2:: StaticArray ) = broadcast (> , a1, a2)
54
- @inline .<= (a1, a2:: StaticArray ) = broadcast (<= , a1, a2)
55
- @inline .>= (a1, a2:: StaticArray ) = broadcast (>= , a1, a2)
7
+ @static if VERSION < v " 0.6.0-dev.1632"
8
+ @inline .- (a1:: StaticArray ) = broadcast (- , a1)
9
+
10
+ @inline .+ (a1:: StaticArray , a2:: StaticArray ) = broadcast (+ , a1, a2)
11
+ @inline .- (a1:: StaticArray , a2:: StaticArray ) = broadcast (- , a1, a2)
12
+ @inline .* (a1:: StaticArray , a2:: StaticArray ) = broadcast (* , a1, a2)
13
+ @inline ./ (a1:: StaticArray , a2:: StaticArray ) = broadcast (/ , a1, a2)
14
+ @inline .// (a1:: StaticArray , a2:: StaticArray ) = broadcast (// , a1, a2)
15
+ @inline .\ (a1:: StaticArray , a2:: StaticArray ) = broadcast (\ , a1, a2)
16
+ @inline .% (a1:: StaticArray , a2:: StaticArray ) = broadcast (% , a1, a2)
17
+ @inline .^ (a1:: StaticArray , a2:: StaticArray ) = broadcast (^ , a1, a2)
18
+ @inline .<< (a1:: StaticArray , a2:: StaticArray ) = broadcast (<< , a1, a2)
19
+ @inline .>> (a1:: StaticArray , a2:: StaticArray ) = broadcast (<< , a1, a2)
20
+ @inline .== (a1:: StaticArray , a2:: StaticArray ) = broadcast (== , a1, a2)
21
+ @inline .< (a1:: StaticArray , a2:: StaticArray ) = broadcast (< , a1, a2)
22
+ @inline .> (a1:: StaticArray , a2:: StaticArray ) = broadcast (> , a1, a2)
23
+ @inline .<= (a1:: StaticArray , a2:: StaticArray ) = broadcast (<= , a1, a2)
24
+ @inline .>= (a1:: StaticArray , a2:: StaticArray ) = broadcast (>= , a1, a2)
25
+
26
+ @inline .+ (a1:: StaticArray , a2:: Number ) = broadcast (+ , a1, a2)
27
+ @inline .- (a1:: StaticArray , a2:: Number ) = broadcast (- , a1, a2)
28
+ @inline .* (a1:: StaticArray , a2:: Number ) = broadcast (* , a1, a2)
29
+ @inline ./ (a1:: StaticArray , a2:: Number ) = broadcast (/ , a1, a2)
30
+ @inline .// (a1:: StaticArray , a2:: Number ) = broadcast (// , a1, a2)
31
+ @inline .\ (a1:: StaticArray , a2:: Number ) = broadcast (\ , a1, a2)
32
+ @inline .% (a1:: StaticArray , a2:: Number ) = broadcast (% , a1, a2)
33
+ @inline .^ (a1:: StaticArray , a2:: Number ) = broadcast (^ , a1, a2)
34
+ @inline .<< (a1:: StaticArray , a2:: Number ) = broadcast (<< , a1, a2)
35
+ @inline .>> (a1:: StaticArray , a2:: Number ) = broadcast (<< , a1, a2)
36
+ @inline .== (a1:: StaticArray , a2) = broadcast (== , a1, a2)
37
+ @inline .< (a1:: StaticArray , a2) = broadcast (< , a1, a2)
38
+ @inline .> (a1:: StaticArray , a2) = broadcast (> , a1, a2)
39
+ @inline .<= (a1:: StaticArray , a2) = broadcast (<= , a1, a2)
40
+ @inline .>= (a1:: StaticArray , a2) = broadcast (>= , a1, a2)
41
+
42
+ @inline .+ (a1:: Number , a2:: StaticArray ) = broadcast (+ , a1, a2)
43
+ @inline .- (a1:: Number , a2:: StaticArray ) = broadcast (- , a1, a2)
44
+ @inline .* (a1:: Number , a2:: StaticArray ) = broadcast (* , a1, a2)
45
+ @inline ./ (a1:: Number , a2:: StaticArray ) = broadcast (/ , a1, a2)
46
+ @inline .// (a1:: Number , a2:: StaticArray ) = broadcast (// , a1, a2)
47
+ @inline .\ (a1:: Number , a2:: StaticArray ) = broadcast (\ , a1, a2)
48
+ @inline .% (a1:: Number , a2:: StaticArray ) = broadcast (% , a1, a2)
49
+ @inline .^ (a1:: Number , a2:: StaticArray ) = broadcast (^ , a1, a2)
50
+ @inline .<< (a1:: Number , a2:: StaticArray ) = broadcast (<< , a1, a2)
51
+ @inline .>> (a1:: Number , a2:: StaticArray ) = broadcast (<< , a1, a2)
52
+ @inline .== (a1, a2:: StaticArray ) = broadcast (== , a1, a2)
53
+ @inline .< (a1, a2:: StaticArray ) = broadcast (< , a1, a2)
54
+ @inline .> (a1, a2:: StaticArray ) = broadcast (> , a1, a2)
55
+ @inline .<= (a1, a2:: StaticArray ) = broadcast (<= , a1, a2)
56
+ @inline .>= (a1, a2:: StaticArray ) = broadcast (>= , a1, a2)
57
+ end
56
58
57
59
# The remaining auto-vectorized boolean operators
58
60
@inline ! (a:: StaticArray{Bool} ) = broadcast (! , a)
0 commit comments