@@ -134,37 +134,37 @@ end
134
134
(:: ∂☆{N})(args:: AbstractTangentBundle{N} ...) where {N} = ∂☆internal {N} ()(args... )
135
135
136
136
# Special case rules for performance
137
- @Base . aggressive_constprop function (:: ∂☆{N})(f:: ATB{N, typeof(getfield)} , x:: TangentBundle{N} , s:: AbstractTangentBundle{N} ) where {N}
137
+ @Base . constprop :aggressive function (:: ∂☆{N})(f:: ATB{N, typeof(getfield)} , x:: TangentBundle{N} , s:: AbstractTangentBundle{N} ) where {N}
138
138
s = primal (s)
139
139
TangentBundle {N} (getfield (primal (x), s),
140
140
map (x-> lifted_getfield (x, s), x. partials))
141
141
end
142
142
143
- @Base . aggressive_constprop function (:: ∂☆{N})(f:: ATB{N, typeof(getfield)} , x:: TaylorBundle{N} , s:: AbstractTangentBundle{N} ) where {N}
143
+ @Base . constprop :aggressive function (:: ∂☆{N})(f:: ATB{N, typeof(getfield)} , x:: TaylorBundle{N} , s:: AbstractTangentBundle{N} ) where {N}
144
144
s = primal (s)
145
145
TaylorBundle {N} (getfield (primal (x), s),
146
146
map (y-> lifted_getfield (y, s), x. coeffs))
147
147
end
148
148
149
- @Base . aggressive_constprop function (:: ∂☆{N})(:: ATB{N, typeof(getfield)} , x:: CompositeBundle{N} , s:: AbstractTangentBundle{N, Int} ) where {N}
149
+ @Base . constprop :aggressive function (:: ∂☆{N})(:: ATB{N, typeof(getfield)} , x:: CompositeBundle{N} , s:: AbstractTangentBundle{N, Int} ) where {N}
150
150
x. tup[primal (s)]
151
151
end
152
152
153
- @Base . aggressive_constprop function (:: ∂☆{N})(:: ATB{N, typeof(getfield)} , x:: CompositeBundle{N, B} , s:: AbstractTangentBundle{N, Symbol} ) where {N, B}
153
+ @Base . constprop :aggressive function (:: ∂☆{N})(:: ATB{N, typeof(getfield)} , x:: CompositeBundle{N, B} , s:: AbstractTangentBundle{N, Symbol} ) where {N, B}
154
154
x. tup[Base. fieldindex (B, primal (s))]
155
155
end
156
156
157
- @Base . aggressive_constprop function (:: ∂☆{N})(f:: ATB{N, typeof(getfield)} , x:: ATB{N} , s:: ATB{N} , inbounds:: ATB{N} ) where {N}
157
+ @Base . constprop :aggressive function (:: ∂☆{N})(f:: ATB{N, typeof(getfield)} , x:: ATB{N} , s:: ATB{N} , inbounds:: ATB{N} ) where {N}
158
158
s = primal (s)
159
159
TangentBundle {N} (getfield (primal (x), s, primal (inbounds)),
160
160
map (x-> lifted_getfield (x, s), x. partials))
161
161
end
162
162
163
- @Base . aggressive_constprop function (:: ∂☆{N})(f:: ATB{N, typeof(getfield)} , x:: UniformBundle{N, <:Any, U} , s:: AbstractTangentBundle{N} ) where {N, U}
163
+ @Base . constprop :aggressive function (:: ∂☆{N})(f:: ATB{N, typeof(getfield)} , x:: UniformBundle{N, <:Any, U} , s:: AbstractTangentBundle{N} ) where {N, U}
164
164
UniformBundle {N,<:Any,U} (getfield (primal (x), primal (s)), x. partial)
165
165
end
166
166
167
- @Base . aggressive_constprop function (:: ∂☆{N})(f:: ATB{N, typeof(getfield)} , x:: UniformBundle{N, <:Any, U} , s:: AbstractTangentBundle{N} , inbounds:: AbstractTangentBundle{N} ) where {N, U}
167
+ @Base . constprop :aggressive function (:: ∂☆{N})(f:: ATB{N, typeof(getfield)} , x:: UniformBundle{N, <:Any, U} , s:: AbstractTangentBundle{N} , inbounds:: AbstractTangentBundle{N} ) where {N, U}
168
168
UniformBundle {N,<:Any,U} (getfield (primal (x), primal (s), primal (inbounds)), x. partial)
169
169
end
170
170
0 commit comments