@@ -37,12 +37,12 @@ OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
37
37
38
38
namespace ArrayFire
39
39
{
40
+ // we can't make Arith static because Array inherits from it (so the F# Core.Operators free functions work correctly)
40
41
public /*static*/ class Arith
41
42
{
42
- // we can't make Arith static because Array<T> inherits from it (so the F# Core.Operators free functions work correctly)
43
43
protected Arith ( ) { }
44
44
45
- #region Mathematical Functions
45
+ #region Mathematical Functions
46
46
#if _
47
47
for ( \w+ ) in
48
48
Sin Sinh Asin Asinh
@@ -55,120 +55,120 @@ Abs Sigmoid Factorial
55
55
Round Trunc Floor Ceil
56
56
do
57
57
[ MethodImpl ( MethodImplOptions . AggressiveInlining ) ]
58
- public static Array< T > $1 < T > ( Array < T > arr ) { IntPtr ptr ; Internal . VERIFY ( af_arith . af_ $L1( out ptr , arr . _ptr ) ) ; return new Array < T > ( ptr ) ; }
58
+ public static Array $1 ( Array arr ) { IntPtr ptr ; Internal . VERIFY ( af_arith . af_ $L1( out ptr , arr . _ptr ) ) ; return new Array ( ptr ) ; }
59
59
#else
60
60
[ MethodImpl ( MethodImplOptions . AggressiveInlining ) ]
61
- public static Array < T > Sin < T > ( Array < T > arr ) { IntPtr ptr ; Internal . VERIFY ( af_arith . af_sin ( out ptr , arr . _ptr ) ) ; return new Array < T > ( ptr ) ; }
61
+ public static Array Sin ( Array arr ) { IntPtr ptr ; Internal . VERIFY ( af_arith . af_sin ( out ptr , arr . _ptr ) ) ; return new Array ( ptr ) ; }
62
62
63
63
[ MethodImpl ( MethodImplOptions . AggressiveInlining ) ]
64
- public static Array < T > Sinh < T > ( Array < T > arr ) { IntPtr ptr ; Internal . VERIFY ( af_arith . af_sinh ( out ptr , arr . _ptr ) ) ; return new Array < T > ( ptr ) ; }
64
+ public static Array Sinh ( Array arr ) { IntPtr ptr ; Internal . VERIFY ( af_arith . af_sinh ( out ptr , arr . _ptr ) ) ; return new Array ( ptr ) ; }
65
65
66
66
[ MethodImpl ( MethodImplOptions . AggressiveInlining ) ]
67
- public static Array < T > Asin < T > ( Array < T > arr ) { IntPtr ptr ; Internal . VERIFY ( af_arith . af_asin ( out ptr , arr . _ptr ) ) ; return new Array < T > ( ptr ) ; }
67
+ public static Array Asin ( Array arr ) { IntPtr ptr ; Internal . VERIFY ( af_arith . af_asin ( out ptr , arr . _ptr ) ) ; return new Array ( ptr ) ; }
68
68
69
69
[ MethodImpl ( MethodImplOptions . AggressiveInlining ) ]
70
- public static Array < T > Asinh < T > ( Array < T > arr ) { IntPtr ptr ; Internal . VERIFY ( af_arith . af_asinh ( out ptr , arr . _ptr ) ) ; return new Array < T > ( ptr ) ; }
70
+ public static Array Asinh ( Array arr ) { IntPtr ptr ; Internal . VERIFY ( af_arith . af_asinh ( out ptr , arr . _ptr ) ) ; return new Array ( ptr ) ; }
71
71
72
72
[ MethodImpl ( MethodImplOptions . AggressiveInlining ) ]
73
- public static Array < T > Cos < T > ( Array < T > arr ) { IntPtr ptr ; Internal . VERIFY ( af_arith . af_cos ( out ptr , arr . _ptr ) ) ; return new Array < T > ( ptr ) ; }
73
+ public static Array Cos ( Array arr ) { IntPtr ptr ; Internal . VERIFY ( af_arith . af_cos ( out ptr , arr . _ptr ) ) ; return new Array ( ptr ) ; }
74
74
75
75
[ MethodImpl ( MethodImplOptions . AggressiveInlining ) ]
76
- public static Array < T > Cosh < T > ( Array < T > arr ) { IntPtr ptr ; Internal . VERIFY ( af_arith . af_cosh ( out ptr , arr . _ptr ) ) ; return new Array < T > ( ptr ) ; }
76
+ public static Array Cosh ( Array arr ) { IntPtr ptr ; Internal . VERIFY ( af_arith . af_cosh ( out ptr , arr . _ptr ) ) ; return new Array ( ptr ) ; }
77
77
78
78
[ MethodImpl ( MethodImplOptions . AggressiveInlining ) ]
79
- public static Array < T > Acos < T > ( Array < T > arr ) { IntPtr ptr ; Internal . VERIFY ( af_arith . af_acos ( out ptr , arr . _ptr ) ) ; return new Array < T > ( ptr ) ; }
79
+ public static Array Acos ( Array arr ) { IntPtr ptr ; Internal . VERIFY ( af_arith . af_acos ( out ptr , arr . _ptr ) ) ; return new Array ( ptr ) ; }
80
80
81
81
[ MethodImpl ( MethodImplOptions . AggressiveInlining ) ]
82
- public static Array < T > Acosh < T > ( Array < T > arr ) { IntPtr ptr ; Internal . VERIFY ( af_arith . af_acosh ( out ptr , arr . _ptr ) ) ; return new Array < T > ( ptr ) ; }
82
+ public static Array Acosh ( Array arr ) { IntPtr ptr ; Internal . VERIFY ( af_arith . af_acosh ( out ptr , arr . _ptr ) ) ; return new Array ( ptr ) ; }
83
83
84
84
[ MethodImpl ( MethodImplOptions . AggressiveInlining ) ]
85
- public static Array < T > Tan < T > ( Array < T > arr ) { IntPtr ptr ; Internal . VERIFY ( af_arith . af_tan ( out ptr , arr . _ptr ) ) ; return new Array < T > ( ptr ) ; }
85
+ public static Array Tan ( Array arr ) { IntPtr ptr ; Internal . VERIFY ( af_arith . af_tan ( out ptr , arr . _ptr ) ) ; return new Array ( ptr ) ; }
86
86
87
87
[ MethodImpl ( MethodImplOptions . AggressiveInlining ) ]
88
- public static Array < T > Tanh < T > ( Array < T > arr ) { IntPtr ptr ; Internal . VERIFY ( af_arith . af_tanh ( out ptr , arr . _ptr ) ) ; return new Array < T > ( ptr ) ; }
88
+ public static Array Tanh ( Array arr ) { IntPtr ptr ; Internal . VERIFY ( af_arith . af_tanh ( out ptr , arr . _ptr ) ) ; return new Array ( ptr ) ; }
89
89
90
90
[ MethodImpl ( MethodImplOptions . AggressiveInlining ) ]
91
- public static Array < T > Atan < T > ( Array < T > arr ) { IntPtr ptr ; Internal . VERIFY ( af_arith . af_atan ( out ptr , arr . _ptr ) ) ; return new Array < T > ( ptr ) ; }
91
+ public static Array Atan ( Array arr ) { IntPtr ptr ; Internal . VERIFY ( af_arith . af_atan ( out ptr , arr . _ptr ) ) ; return new Array ( ptr ) ; }
92
92
93
93
[ MethodImpl ( MethodImplOptions . AggressiveInlining ) ]
94
- public static Array < T > Atanh < T > ( Array < T > arr ) { IntPtr ptr ; Internal . VERIFY ( af_arith . af_atanh ( out ptr , arr . _ptr ) ) ; return new Array < T > ( ptr ) ; }
94
+ public static Array Atanh ( Array arr ) { IntPtr ptr ; Internal . VERIFY ( af_arith . af_atanh ( out ptr , arr . _ptr ) ) ; return new Array ( ptr ) ; }
95
95
96
96
[ MethodImpl ( MethodImplOptions . AggressiveInlining ) ]
97
- public static Array < T > Exp < T > ( Array < T > arr ) { IntPtr ptr ; Internal . VERIFY ( af_arith . af_exp ( out ptr , arr . _ptr ) ) ; return new Array < T > ( ptr ) ; }
97
+ public static Array Exp ( Array arr ) { IntPtr ptr ; Internal . VERIFY ( af_arith . af_exp ( out ptr , arr . _ptr ) ) ; return new Array ( ptr ) ; }
98
98
99
99
[ MethodImpl ( MethodImplOptions . AggressiveInlining ) ]
100
- public static Array < T > Expm1 < T > ( Array < T > arr ) { IntPtr ptr ; Internal . VERIFY ( af_arith . af_expm1 ( out ptr , arr . _ptr ) ) ; return new Array < T > ( ptr ) ; }
100
+ public static Array Expm1 ( Array arr ) { IntPtr ptr ; Internal . VERIFY ( af_arith . af_expm1 ( out ptr , arr . _ptr ) ) ; return new Array ( ptr ) ; }
101
101
102
102
[ MethodImpl ( MethodImplOptions . AggressiveInlining ) ]
103
- public static Array < T > Log < T > ( Array < T > arr ) { IntPtr ptr ; Internal . VERIFY ( af_arith . af_log ( out ptr , arr . _ptr ) ) ; return new Array < T > ( ptr ) ; }
103
+ public static Array Log ( Array arr ) { IntPtr ptr ; Internal . VERIFY ( af_arith . af_log ( out ptr , arr . _ptr ) ) ; return new Array ( ptr ) ; }
104
104
105
105
[ MethodImpl ( MethodImplOptions . AggressiveInlining ) ]
106
- public static Array < T > Log10 < T > ( Array < T > arr ) { IntPtr ptr ; Internal . VERIFY ( af_arith . af_log10 ( out ptr , arr . _ptr ) ) ; return new Array < T > ( ptr ) ; }
106
+ public static Array Log10 ( Array arr ) { IntPtr ptr ; Internal . VERIFY ( af_arith . af_log10 ( out ptr , arr . _ptr ) ) ; return new Array ( ptr ) ; }
107
107
108
108
[ MethodImpl ( MethodImplOptions . AggressiveInlining ) ]
109
- public static Array < T > Log1p < T > ( Array < T > arr ) { IntPtr ptr ; Internal . VERIFY ( af_arith . af_log1p ( out ptr , arr . _ptr ) ) ; return new Array < T > ( ptr ) ; }
109
+ public static Array Log1p ( Array arr ) { IntPtr ptr ; Internal . VERIFY ( af_arith . af_log1p ( out ptr , arr . _ptr ) ) ; return new Array ( ptr ) ; }
110
110
111
111
[ MethodImpl ( MethodImplOptions . AggressiveInlining ) ]
112
- public static Array < T > Log2 < T > ( Array < T > arr ) { IntPtr ptr ; Internal . VERIFY ( af_arith . af_log2 ( out ptr , arr . _ptr ) ) ; return new Array < T > ( ptr ) ; }
112
+ public static Array Log2 ( Array arr ) { IntPtr ptr ; Internal . VERIFY ( af_arith . af_log2 ( out ptr , arr . _ptr ) ) ; return new Array ( ptr ) ; }
113
113
114
114
[ MethodImpl ( MethodImplOptions . AggressiveInlining ) ]
115
- public static Array < T > Erf < T > ( Array < T > arr ) { IntPtr ptr ; Internal . VERIFY ( af_arith . af_erf ( out ptr , arr . _ptr ) ) ; return new Array < T > ( ptr ) ; }
115
+ public static Array Erf ( Array arr ) { IntPtr ptr ; Internal . VERIFY ( af_arith . af_erf ( out ptr , arr . _ptr ) ) ; return new Array ( ptr ) ; }
116
116
117
117
[ MethodImpl ( MethodImplOptions . AggressiveInlining ) ]
118
- public static Array < T > Erfc < T > ( Array < T > arr ) { IntPtr ptr ; Internal . VERIFY ( af_arith . af_erfc ( out ptr , arr . _ptr ) ) ; return new Array < T > ( ptr ) ; }
118
+ public static Array Erfc ( Array arr ) { IntPtr ptr ; Internal . VERIFY ( af_arith . af_erfc ( out ptr , arr . _ptr ) ) ; return new Array ( ptr ) ; }
119
119
120
120
[ MethodImpl ( MethodImplOptions . AggressiveInlining ) ]
121
- public static Array < T > Sqrt < T > ( Array < T > arr ) { IntPtr ptr ; Internal . VERIFY ( af_arith . af_sqrt ( out ptr , arr . _ptr ) ) ; return new Array < T > ( ptr ) ; }
121
+ public static Array Sqrt ( Array arr ) { IntPtr ptr ; Internal . VERIFY ( af_arith . af_sqrt ( out ptr , arr . _ptr ) ) ; return new Array ( ptr ) ; }
122
122
123
123
[ MethodImpl ( MethodImplOptions . AggressiveInlining ) ]
124
- public static Array < T > Pow2 < T > ( Array < T > arr ) { IntPtr ptr ; Internal . VERIFY ( af_arith . af_pow2 ( out ptr , arr . _ptr ) ) ; return new Array < T > ( ptr ) ; }
124
+ public static Array Pow2 ( Array arr ) { IntPtr ptr ; Internal . VERIFY ( af_arith . af_pow2 ( out ptr , arr . _ptr ) ) ; return new Array ( ptr ) ; }
125
125
126
126
[ MethodImpl ( MethodImplOptions . AggressiveInlining ) ]
127
- public static Array < T > Cbrt < T > ( Array < T > arr ) { IntPtr ptr ; Internal . VERIFY ( af_arith . af_cbrt ( out ptr , arr . _ptr ) ) ; return new Array < T > ( ptr ) ; }
127
+ public static Array Cbrt ( Array arr ) { IntPtr ptr ; Internal . VERIFY ( af_arith . af_cbrt ( out ptr , arr . _ptr ) ) ; return new Array ( ptr ) ; }
128
128
129
129
[ MethodImpl ( MethodImplOptions . AggressiveInlining ) ]
130
- public static Array < T > LGamma < T > ( Array < T > arr ) { IntPtr ptr ; Internal . VERIFY ( af_arith . af_lgamma ( out ptr , arr . _ptr ) ) ; return new Array < T > ( ptr ) ; }
130
+ public static Array LGamma ( Array arr ) { IntPtr ptr ; Internal . VERIFY ( af_arith . af_lgamma ( out ptr , arr . _ptr ) ) ; return new Array ( ptr ) ; }
131
131
132
132
[ MethodImpl ( MethodImplOptions . AggressiveInlining ) ]
133
- public static Array < T > TGamma < T > ( Array < T > arr ) { IntPtr ptr ; Internal . VERIFY ( af_arith . af_tgamma ( out ptr , arr . _ptr ) ) ; return new Array < T > ( ptr ) ; }
133
+ public static Array TGamma ( Array arr ) { IntPtr ptr ; Internal . VERIFY ( af_arith . af_tgamma ( out ptr , arr . _ptr ) ) ; return new Array ( ptr ) ; }
134
134
135
135
[ MethodImpl ( MethodImplOptions . AggressiveInlining ) ]
136
- public static Array < T > Abs < T > ( Array < T > arr ) { IntPtr ptr ; Internal . VERIFY ( af_arith . af_abs ( out ptr , arr . _ptr ) ) ; return new Array < T > ( ptr ) ; }
136
+ public static Array Abs ( Array arr ) { IntPtr ptr ; Internal . VERIFY ( af_arith . af_abs ( out ptr , arr . _ptr ) ) ; return new Array ( ptr ) ; }
137
137
138
138
[ MethodImpl ( MethodImplOptions . AggressiveInlining ) ]
139
- public static Array < T > Sigmoid < T > ( Array < T > arr ) { IntPtr ptr ; Internal . VERIFY ( af_arith . af_sigmoid ( out ptr , arr . _ptr ) ) ; return new Array < T > ( ptr ) ; }
139
+ public static Array Sigmoid ( Array arr ) { IntPtr ptr ; Internal . VERIFY ( af_arith . af_sigmoid ( out ptr , arr . _ptr ) ) ; return new Array ( ptr ) ; }
140
140
141
141
[ MethodImpl ( MethodImplOptions . AggressiveInlining ) ]
142
- public static Array < T > Factorial < T > ( Array < T > arr ) { IntPtr ptr ; Internal . VERIFY ( af_arith . af_factorial ( out ptr , arr . _ptr ) ) ; return new Array < T > ( ptr ) ; }
142
+ public static Array Factorial ( Array arr ) { IntPtr ptr ; Internal . VERIFY ( af_arith . af_factorial ( out ptr , arr . _ptr ) ) ; return new Array ( ptr ) ; }
143
143
144
144
[ MethodImpl ( MethodImplOptions . AggressiveInlining ) ]
145
- public static Array < T > Round < T > ( Array < T > arr ) { IntPtr ptr ; Internal . VERIFY ( af_arith . af_round ( out ptr , arr . _ptr ) ) ; return new Array < T > ( ptr ) ; }
145
+ public static Array Round ( Array arr ) { IntPtr ptr ; Internal . VERIFY ( af_arith . af_round ( out ptr , arr . _ptr ) ) ; return new Array ( ptr ) ; }
146
146
147
147
[ MethodImpl ( MethodImplOptions . AggressiveInlining ) ]
148
- public static Array < T > Trunc < T > ( Array < T > arr ) { IntPtr ptr ; Internal . VERIFY ( af_arith . af_trunc ( out ptr , arr . _ptr ) ) ; return new Array < T > ( ptr ) ; }
148
+ public static Array Trunc ( Array arr ) { IntPtr ptr ; Internal . VERIFY ( af_arith . af_trunc ( out ptr , arr . _ptr ) ) ; return new Array ( ptr ) ; }
149
149
150
150
[ MethodImpl ( MethodImplOptions . AggressiveInlining ) ]
151
- public static Array < T > Floor < T > ( Array < T > arr ) { IntPtr ptr ; Internal . VERIFY ( af_arith . af_floor ( out ptr , arr . _ptr ) ) ; return new Array < T > ( ptr ) ; }
151
+ public static Array Floor ( Array arr ) { IntPtr ptr ; Internal . VERIFY ( af_arith . af_floor ( out ptr , arr . _ptr ) ) ; return new Array ( ptr ) ; }
152
152
153
153
[ MethodImpl ( MethodImplOptions . AggressiveInlining ) ]
154
- public static Array < T > Ceil < T > ( Array < T > arr ) { IntPtr ptr ; Internal . VERIFY ( af_arith . af_ceil ( out ptr , arr . _ptr ) ) ; return new Array < T > ( ptr ) ; }
154
+ public static Array Ceil ( Array arr ) { IntPtr ptr ; Internal . VERIFY ( af_arith . af_ceil ( out ptr , arr . _ptr ) ) ; return new Array ( ptr ) ; }
155
155
#endif
156
156
157
157
#if _
158
158
for ( \w+ ) in
159
159
Atan2 Rem Pow
160
160
do
161
161
[ MethodImpl ( MethodImplOptions . AggressiveInlining ) ]
162
- public static Array< T > $1 < T > ( Array < T > lhs , Array < T > rhs ) { IntPtr ptr; Internal . VERIFY ( af_arith . af_$L1( out ptr, lhs . _ptr, rhs . _ptr, false ) ) ; return new Array< T > ( ptr ) ; }
162
+ public static Array $1 ( Array lhs , Array rhs ) { IntPtr ptr; Internal . VERIFY ( af_arith . af_$L1( out ptr, lhs . _ptr, rhs . _ptr, false ) ) ; return new Array( ptr ) ; }
163
163
#else
164
164
[ MethodImpl ( MethodImplOptions . AggressiveInlining ) ]
165
- public static Array < T > Atan2 < T > ( Array < T > lhs , Array < T > rhs ) { IntPtr ptr ; Internal . VERIFY ( af_arith . af_atan2 ( out ptr , lhs . _ptr , rhs . _ptr , false ) ) ; return new Array < T > ( ptr ) ; }
165
+ public static Array Atan2 ( Array lhs , Array rhs ) { IntPtr ptr ; Internal . VERIFY ( af_arith . af_atan2 ( out ptr , lhs . _ptr , rhs . _ptr , false ) ) ; return new Array ( ptr ) ; }
166
166
167
167
[ MethodImpl ( MethodImplOptions . AggressiveInlining ) ]
168
- public static Array < T > Rem < T > ( Array < T > lhs , Array < T > rhs ) { IntPtr ptr ; Internal . VERIFY ( af_arith . af_rem ( out ptr , lhs . _ptr , rhs . _ptr , false ) ) ; return new Array < T > ( ptr ) ; }
168
+ public static Array Rem ( Array lhs , Array rhs ) { IntPtr ptr ; Internal . VERIFY ( af_arith . af_rem ( out ptr , lhs . _ptr , rhs . _ptr , false ) ) ; return new Array ( ptr ) ; }
169
169
170
170
[ MethodImpl ( MethodImplOptions . AggressiveInlining ) ]
171
- public static Array < T > Pow < T > ( Array < T > lhs , Array < T > rhs ) { IntPtr ptr ; Internal . VERIFY ( af_arith . af_pow ( out ptr , lhs . _ptr , rhs . _ptr , false ) ) ; return new Array < T > ( ptr ) ; }
171
+ public static Array Pow ( Array lhs , Array rhs ) { IntPtr ptr ; Internal . VERIFY ( af_arith . af_pow ( out ptr , lhs . _ptr , rhs . _ptr , false ) ) ; return new Array ( ptr ) ; }
172
172
#endif
173
173
#endregion
174
174
}
0 commit comments