@@ -13,12 +13,7 @@ Note that because it is recursive, `bmul(a, b)` will not necessarilly do the sam
1313"""
1414module RecursiveTupleMath
1515
16- const var"@_inline" = @static if VERSION >= v " 1.8"
17- var"@inline"
18- else
19- using Base: @_inline_meta
20- var"@_inline_meta"
21- end
16+ using Base: @_inline_meta
2217export bmax, bmin, badd, bsub, bmul, bdiv
2318
2419using StaticArrays, ForwardDiff
9085@define_binary_dual_op (
9186 RecursiveTupleMath. badd,
9287 begin
93- @_inline
88+ @_inline_meta
9489 Dual {Txy} (badd (x. value, y. value), badd (x. partials. values, y. partials. values))
9590 end ,
9691 begin
97- @_inline
92+ @_inline_meta
9893 Dual {Tx} (badd (x. value, y), x. partials)
9994 end ,
10095 begin
101- @_inline
96+ @_inline_meta
10297 Dual {Ty} (badd (x, y. value), y. partials. values)
10398 end ,
10499)
105100@define_binary_dual_op (
106101 RecursiveTupleMath. bsub,
107102 begin
108- @_inline
103+ @_inline_meta
109104 Dual {Txy} (bsub (x. value, y. value), bsub (x. partials. values, y. partials. values))
110105 end ,
111106 begin
112- @_inline
107+ @_inline_meta
113108 Dual {Tx} (bsub (x. value, y), x. partials)
114109 end ,
115110 begin
116- @_inline
111+ @_inline_meta
117112 Dual {Ty} (bsub (x, y. value), bsub (y. partials. values))
118113 end
119114)
120115@define_binary_dual_op (
121116 RecursiveTupleMath. bmul,
122117 begin
123- @_inline
118+ @_inline_meta
124119 Dual {Txy} (
125120 bmul (x. value, y. value),
126121 badd (bmul (x. value, y. partials. values), bmul (x. partials. values, y. value)),
127122 )
128123 end ,
129124 begin
130- @_inline
125+ @_inline_meta
131126 Dual {Tx} (bmul (x. value, y), bmul (x. partials. values, y))
132127 end ,
133128 begin
134- @_inline
129+ @_inline_meta
135130 Dual {Ty} (bmul (x, y. value), bmul (x, y. partials. values))
136131 end
137132)
138133@define_binary_dual_op (
139134 RecursiveTupleMath. bdiv,
140135 begin
141- @_inline
136+ @_inline_meta
142137 Dual {Txy} (
143138 bdiv (x. value, y. value),
144139 bdiv (
@@ -148,11 +143,11 @@ end
148143 )
149144 end ,
150145 begin
151- @_inline
146+ @_inline_meta
152147 Dual {Tx} (bdiv (x. value, y), bdiv (bmul (x. partials. values, y), bmul (y, y)))
153148 end ,
154149 begin
155- @_inline
150+ @_inline_meta
156151 Dual {Ty} (
157152 bdiv (x, y. value),
158153 bdiv (bsub (bmul (x, y. partials. values)), bmul (y. value, y. value)),
@@ -162,15 +157,15 @@ end
162157@define_binary_dual_op (
163158 RecursiveTupleMath. bmax,
164159 begin
165- @_inline
160+ @_inline_meta
166161 cmp = gt_fast (x. value, y. value)
167162 v = ifelse (cmp, x. value, y. value)
168163 bcmp = btuple (cmp, Val (length (x. partials)))
169164 p = map (ifelse, bcmp, x. partials. values, y. partials. values)
170165 Dual {Txy} (v, p)
171166 end ,
172167 begin
173- @_inline
168+ @_inline_meta
174169 cmp = gt_fast (x. value, y)
175170 v = ifelse (cmp, x. value, y)
176171 bcmp = btuple (cmp, Val (length (x. partials)))
179174 Dual {Tx} (v, p)
180175 end ,
181176 begin
182- @_inline
177+ @_inline_meta
183178 cmp = gt_fast (x, y. value)
184179 v = ifelse (cmp, x, y. value)
185180 bcmp = btuple (cmp, Val (length (y. partials)))
@@ -191,15 +186,15 @@ end
191186@define_binary_dual_op (
192187 RecursiveTupleMath. bmin,
193188 begin
194- @_inline
189+ @_inline_meta
195190 cmp = lt_fast (x. value, y. value)
196191 v = ifelse (cmp, x. value, y. value)
197192 bcmp = btuple (cmp, Val (length (x. partials)))
198193 p = map (ifelse, bcmp, x. partials. values, y. partials. values)
199194 Dual {Txy} (v, p)
200195 end ,
201196 begin
202- @_inline
197+ @_inline_meta
203198 cmp = lt_fast (x. value, y)
204199 v = ifelse (cmp, x. value, y)
205200 bcmp = btuple (cmp, Val (length (x. partials)))
208203 Dual {Tx} (v, p)
209204 end ,
210205 begin
211- @_inline
206+ @_inline_meta
212207 cmp = lt_fast (x, y. value)
213208 v = ifelse (cmp, x, y. value)
214209 bcmp = btuple (cmp, Val (length (y. partials)))
0 commit comments