Skip to content

Commit 5cb8be7

Browse files
Revert "Use DEFAULT_SPECIALIZATION for all SciMLFunction constructors"
This reverts commit 28e884f.
1 parent 30b1106 commit 5cb8be7

1 file changed

Lines changed: 38 additions & 38 deletions

File tree

src/scimlfunctions.jl

Lines changed: 38 additions & 38 deletions
Original file line numberDiff line numberDiff line change
@@ -2896,10 +2896,10 @@ function ODEFunction{iip, specialize}(
28962896
end
28972897

28982898
function ODEFunction{iip}(f; kwargs...) where {iip}
2899-
return ODEFunction{iip, DEFAULT_SPECIALIZATION}(f; kwargs...)
2899+
return ODEFunction{iip, FullSpecialize}(f; kwargs...)
29002900
end
29012901
ODEFunction{iip}(f::ODEFunction; kwargs...) where {iip} = f
2902-
ODEFunction(f; kwargs...) = ODEFunction{isinplace(f, 4), DEFAULT_SPECIALIZATION}(f; kwargs...)
2902+
ODEFunction(f; kwargs...) = ODEFunction{isinplace(f, 4), FullSpecialize}(f; kwargs...)
29032903
ODEFunction(f::ODEFunction; kwargs...) = f
29042904

29052905
function unwrapped_f(f::ODEFunction, newf = unwrapped_f(f.f))
@@ -3206,7 +3206,7 @@ end
32063206

32073207
SplitFunction(f1, f2; kwargs...) = SplitFunction{isinplace(f2, 4)}(f1, f2; kwargs...)
32083208
function SplitFunction{iip}(f1, f2; kwargs...) where {iip}
3209-
return SplitFunction{iip, DEFAULT_SPECIALIZATION}(
3209+
return SplitFunction{iip, FullSpecialize}(
32103210
ODEFunction(f1), ODEFunction{iip}(f2);
32113211
kwargs...
32123212
)
@@ -3313,7 +3313,7 @@ function DynamicalODEFunction(f1, f2 = nothing; kwargs...)
33133313
return DynamicalODEFunction{isinplace(f1, 5)}(f1, f2; kwargs...)
33143314
end
33153315
function DynamicalODEFunction{iip}(f1, f2; kwargs...) where {iip}
3316-
return DynamicalODEFunction{iip, DEFAULT_SPECIALIZATION}(
3316+
return DynamicalODEFunction{iip, FullSpecialize}(
33173317
ODEFunction{iip}(f1),
33183318
ODEFunction{iip}(f2); kwargs...
33193319
)
@@ -3356,11 +3356,11 @@ function DiscreteFunction{iip, specialize}(
33563356
end
33573357

33583358
function DiscreteFunction{iip}(f; kwargs...) where {iip}
3359-
return DiscreteFunction{iip, DEFAULT_SPECIALIZATION}(f; kwargs...)
3359+
return DiscreteFunction{iip, FullSpecialize}(f; kwargs...)
33603360
end
33613361
DiscreteFunction{iip}(f::DiscreteFunction; kwargs...) where {iip} = f
33623362
function DiscreteFunction(f; kwargs...)
3363-
return DiscreteFunction{isinplace(f, 4), DEFAULT_SPECIALIZATION}(f; kwargs...)
3363+
return DiscreteFunction{isinplace(f, 4), FullSpecialize}(f; kwargs...)
33643364
end
33653365
DiscreteFunction(f::DiscreteFunction; kwargs...) = f
33663366

@@ -3428,14 +3428,14 @@ function ImplicitDiscreteFunction{iip, specialize}(
34283428
end
34293429

34303430
function ImplicitDiscreteFunction{iip}(f; kwargs...) where {iip}
3431-
return ImplicitDiscreteFunction{iip, DEFAULT_SPECIALIZATION}(f; kwargs...)
3431+
return ImplicitDiscreteFunction{iip, FullSpecialize}(f; kwargs...)
34323432
end
34333433
ImplicitDiscreteFunction{iip}(f::ImplicitDiscreteFunction; kwargs...) where {iip} = f
34343434
function ImplicitDiscreteFunction(
34353435
f; resid_prototype = __has_resid_prototype(f) ? f.resid_prototype : nothing,
34363436
kwargs...
34373437
)
3438-
return ImplicitDiscreteFunction{isinplace(f, 5), DEFAULT_SPECIALIZATION}(f; resid_prototype, kwargs...)
3438+
return ImplicitDiscreteFunction{isinplace(f, 5), FullSpecialize}(f; resid_prototype, kwargs...)
34393439
end
34403440
ImplicitDiscreteFunction(f::ImplicitDiscreteFunction; kwargs...) = f
34413441

@@ -3625,11 +3625,11 @@ function unwrapped_f(
36253625
end
36263626

36273627
function SDEFunction{iip}(f, g; kwargs...) where {iip}
3628-
return SDEFunction{iip, DEFAULT_SPECIALIZATION}(f, g; kwargs...)
3628+
return SDEFunction{iip, FullSpecialize}(f, g; kwargs...)
36293629
end
36303630
SDEFunction{iip}(f::SDEFunction, g; kwargs...) where {iip} = f
36313631
function SDEFunction(f, g; kwargs...)
3632-
return SDEFunction{isinplace(f, 4), DEFAULT_SPECIALIZATION}(f, g; kwargs...)
3632+
return SDEFunction{isinplace(f, 4), FullSpecialize}(f, g; kwargs...)
36333633
end
36343634
SDEFunction(f::SDEFunction; kwargs...) = f
36353635

@@ -3727,7 +3727,7 @@ function SplitSDEFunction(f1, f2, g; kwargs...)
37273727
return SplitSDEFunction{isinplace(f2, 4)}(f1, f2, g; kwargs...)
37283728
end
37293729
function SplitSDEFunction{iip}(f1, f2, g; kwargs...) where {iip}
3730-
return SplitSDEFunction{iip, DEFAULT_SPECIALIZATION}(
3730+
return SplitSDEFunction{iip, FullSpecialize}(
37313731
SDEFunction(f1, g), SDEFunction{iip}(f2, g),
37323732
g; kwargs...
37333733
)
@@ -3831,7 +3831,7 @@ function DynamicalSDEFunction(f1, f2, g; kwargs...)
38313831
return DynamicalSDEFunction{isinplace(f2, 5)}(f1, f2, g; kwargs...)
38323832
end
38333833
function DynamicalSDEFunction{iip}(f1, f2, g; kwargs...) where {iip}
3834-
return DynamicalSDEFunction{iip, DEFAULT_SPECIALIZATION}(
3834+
return DynamicalSDEFunction{iip, FullSpecialize}(
38353835
SDEFunction{iip}(f1, g),
38363836
SDEFunction{iip}(f2, g), g; kwargs...
38373837
)
@@ -3942,11 +3942,11 @@ function RODEFunction{iip, specialize}(
39423942
end
39433943

39443944
function RODEFunction{iip}(f; kwargs...) where {iip}
3945-
return RODEFunction{iip, DEFAULT_SPECIALIZATION}(f; kwargs...)
3945+
return RODEFunction{iip, FullSpecialize}(f; kwargs...)
39463946
end
39473947
RODEFunction{iip}(f::RODEFunction; kwargs...) where {iip} = f
39483948
function RODEFunction(f; kwargs...)
3949-
return RODEFunction{isinplace(f, 5), DEFAULT_SPECIALIZATION}(f; kwargs...)
3949+
return RODEFunction{isinplace(f, 5), FullSpecialize}(f; kwargs...)
39503950
end
39513951
RODEFunction(f::RODEFunction; kwargs...) = f
39523952

@@ -4051,10 +4051,10 @@ function DAEFunction{iip, specialize}(
40514051
end
40524052

40534053
function DAEFunction{iip}(f; kwargs...) where {iip}
4054-
return DAEFunction{iip, DEFAULT_SPECIALIZATION}(f; kwargs...)
4054+
return DAEFunction{iip, FullSpecialize}(f; kwargs...)
40554055
end
40564056
DAEFunction{iip}(f::DAEFunction; kwargs...) where {iip} = f
4057-
DAEFunction(f; kwargs...) = DAEFunction{isinplace(f, 5), DEFAULT_SPECIALIZATION}(f; kwargs...)
4057+
DAEFunction(f; kwargs...) = DAEFunction{isinplace(f, 5), FullSpecialize}(f; kwargs...)
40584058
DAEFunction(f::DAEFunction; kwargs...) = f
40594059

40604060
function DDEFunction{iip, specialize}(
@@ -4163,10 +4163,10 @@ function DDEFunction{iip, specialize}(
41634163
end
41644164

41654165
function DDEFunction{iip}(f; kwargs...) where {iip}
4166-
return DDEFunction{iip, DEFAULT_SPECIALIZATION}(f; kwargs...)
4166+
return DDEFunction{iip, FullSpecialize}(f; kwargs...)
41674167
end
41684168
DDEFunction{iip}(f::DDEFunction; kwargs...) where {iip} = f
4169-
DDEFunction(f; kwargs...) = DDEFunction{isinplace(f, 5), DEFAULT_SPECIALIZATION}(f; kwargs...)
4169+
DDEFunction(f; kwargs...) = DDEFunction{isinplace(f, 5), FullSpecialize}(f; kwargs...)
41704170
DDEFunction(f::DDEFunction; kwargs...) = f
41714171

41724172
@add_kwonly function DynamicalDDEFunction{iip}(
@@ -4269,7 +4269,7 @@ function DynamicalDDEFunction(f1, f2 = nothing; kwargs...)
42694269
return DynamicalDDEFunction{isinplace(f1, 6)}(f1, f2; kwargs...)
42704270
end
42714271
function DynamicalDDEFunction{iip}(f1, f2; kwargs...) where {iip}
4272-
return DynamicalDDEFunction{iip, DEFAULT_SPECIALIZATION}(
4272+
return DynamicalDDEFunction{iip, FullSpecialize}(
42734273
DDEFunction{iip}(f1),
42744274
DDEFunction{iip}(f2); kwargs...
42754275
)
@@ -4368,11 +4368,11 @@ function SDDEFunction{iip, specialize}(
43684368
end
43694369

43704370
function SDDEFunction{iip}(f, g; kwargs...) where {iip}
4371-
return SDDEFunction{iip, DEFAULT_SPECIALIZATION}(f, g; kwargs...)
4371+
return SDDEFunction{iip, FullSpecialize}(f, g; kwargs...)
43724372
end
43734373
SDDEFunction{iip}(f::SDDEFunction, g; kwargs...) where {iip} = f
43744374
function SDDEFunction(f, g; kwargs...)
4375-
return SDDEFunction{isinplace(f, 5), DEFAULT_SPECIALIZATION}(f, g; kwargs...)
4375+
return SDDEFunction{isinplace(f, 5), FullSpecialize}(f, g; kwargs...)
43764376
end
43774377
SDDEFunction(f::SDDEFunction; kwargs...) = f
43784378

@@ -4480,11 +4480,11 @@ function NonlinearFunction{iip, specialize}(
44804480
end
44814481

44824482
function NonlinearFunction{iip}(f; kwargs...) where {iip}
4483-
return NonlinearFunction{iip, DEFAULT_SPECIALIZATION}(f; kwargs...)
4483+
return NonlinearFunction{iip, FullSpecialize}(f; kwargs...)
44844484
end
44854485
NonlinearFunction{iip}(f::NonlinearFunction; kwargs...) where {iip} = f
44864486
function NonlinearFunction(f; kwargs...)
4487-
return NonlinearFunction{isinplace(f, 3), DEFAULT_SPECIALIZATION}(f; kwargs...)
4487+
return NonlinearFunction{isinplace(f, 3), FullSpecialize}(f; kwargs...)
44884488
end
44894489
NonlinearFunction(f::NonlinearFunction; kwargs...) = f
44904490

@@ -4513,11 +4513,11 @@ function HomotopyNonlinearFunction{iip, specialize}(
45134513
end
45144514

45154515
function HomotopyNonlinearFunction{iip}(f; kwargs...) where {iip}
4516-
return HomotopyNonlinearFunction{iip, DEFAULT_SPECIALIZATION}(f; kwargs...)
4516+
return HomotopyNonlinearFunction{iip, FullSpecialize}(f; kwargs...)
45174517
end
45184518
HomotopyNonlinearFunction{iip}(f::HomotopyNonlinearFunction; kwargs...) where {iip} = f
45194519
function HomotopyNonlinearFunction(f; kwargs...)
4520-
return HomotopyNonlinearFunction{isinplace(f, 3), DEFAULT_SPECIALIZATION}(f; kwargs...)
4520+
return HomotopyNonlinearFunction{isinplace(f, 3), FullSpecialize}(f; kwargs...)
45214521
end
45224522
HomotopyNonlinearFunction(f::HomotopyNonlinearFunction; kwargs...) = f
45234523

@@ -4562,11 +4562,11 @@ function IntervalNonlinearFunction{iip, specialize}(
45624562
end
45634563

45644564
function IntervalNonlinearFunction{iip}(f; kwargs...) where {iip}
4565-
return IntervalNonlinearFunction{iip, DEFAULT_SPECIALIZATION}(f; kwargs...)
4565+
return IntervalNonlinearFunction{iip, FullSpecialize}(f; kwargs...)
45664566
end
45674567
IntervalNonlinearFunction{iip}(f::IntervalNonlinearFunction; kwargs...) where {iip} = f
45684568
function IntervalNonlinearFunction(f; kwargs...)
4569-
return IntervalNonlinearFunction{isinplace(f, 3), DEFAULT_SPECIALIZATION}(f; kwargs...)
4569+
return IntervalNonlinearFunction{isinplace(f, 3), FullSpecialize}(f; kwargs...)
45704570
end
45714571
IntervalNonlinearFunction(f::IntervalNonlinearFunction; kwargs...) = f
45724572

@@ -4881,11 +4881,11 @@ function BVPFunction{iip}(
48814881
f, bc; twopoint::Union{Val, Bool} = Val(false),
48824882
kwargs...
48834883
) where {iip}
4884-
return BVPFunction{iip, DEFAULT_SPECIALIZATION, _unwrap_val(twopoint)}(f, bc; kwargs...)
4884+
return BVPFunction{iip, FullSpecialize, _unwrap_val(twopoint)}(f, bc; kwargs...)
48854885
end
48864886
BVPFunction{iip}(f::BVPFunction, bc; kwargs...) where {iip} = f
48874887
function BVPFunction(f, bc; twopoint::Union{Val, Bool} = Val(false), kwargs...)
4888-
return BVPFunction{isinplace(f, 4), DEFAULT_SPECIALIZATION, _unwrap_val(twopoint)}(f, bc; kwargs...)
4888+
return BVPFunction{isinplace(f, 4), FullSpecialize, _unwrap_val(twopoint)}(f, bc; kwargs...)
48894889
end
48904890
BVPFunction(f::BVPFunction; kwargs...) = f
48914891

@@ -5077,11 +5077,11 @@ function DynamicalBVPFunction{iip}(
50775077
f, bc; twopoint::Union{Val, Bool} = Val(false),
50785078
kwargs...
50795079
) where {iip}
5080-
return DynamicalBVPFunction{iip, DEFAULT_SPECIALIZATION, _unwrap_val(twopoint)}(f, bc; kwargs...)
5080+
return DynamicalBVPFunction{iip, FullSpecialize, _unwrap_val(twopoint)}(f, bc; kwargs...)
50815081
end
50825082
DynamicalBVPFunction{iip}(f::DynamicalBVPFunction, bc; kwargs...) where {iip} = f
50835083
function DynamicalBVPFunction(f, bc; twopoint::Union{Val, Bool} = Val(false), kwargs...)
5084-
return DynamicalBVPFunction{isinplace(f, 5), DEFAULT_SPECIALIZATION, _unwrap_val(twopoint)}(
5084+
return DynamicalBVPFunction{isinplace(f, 5), FullSpecialize, _unwrap_val(twopoint)}(
50855085
f, bc; kwargs...
50865086
)
50875087
end
@@ -5096,7 +5096,7 @@ function IntegralFunction{iip, specialize}(f, integrand_prototype) where {iip, s
50965096
end
50975097

50985098
function IntegralFunction{iip}(f, integrand_prototype) where {iip}
5099-
return IntegralFunction{iip, DEFAULT_SPECIALIZATION}(f, integrand_prototype)
5099+
return IntegralFunction{iip, FullSpecialize}(f, integrand_prototype)
51005100
end
51015101
function IntegralFunction(f)
51025102
calculated_iip = isinplace(f, 3, "integral", true)
@@ -5132,7 +5132,7 @@ function BatchIntegralFunction{iip}(
51325132
integrand_prototype;
51335133
kwargs...
51345134
) where {iip}
5135-
return BatchIntegralFunction{iip, DEFAULT_SPECIALIZATION}(
5135+
return BatchIntegralFunction{iip, FullSpecialize}(
51365136
f,
51375137
integrand_prototype;
51385138
kwargs...
@@ -5308,11 +5308,11 @@ function ODEInputFunction{iip, specialize}(
53085308
end
53095309

53105310
function ODEInputFunction{iip}(f; kwargs...) where {iip}
5311-
return ODEInputFunction{iip, DEFAULT_SPECIALIZATION}(f; kwargs...)
5311+
return ODEInputFunction{iip, FullSpecialize}(f; kwargs...)
53125312
end
53135313
ODEInputFunction{iip}(f::ODEInputFunction; kwargs...) where {iip} = f
53145314
function ODEInputFunction(f; kwargs...)
5315-
return ODEInputFunction{isinplace(f, 5), DEFAULT_SPECIALIZATION}(f; kwargs...)
5315+
return ODEInputFunction{isinplace(f, 5), FullSpecialize}(f; kwargs...)
53165316
end
53175317
ODEInputFunction(f::ODEInputFunction; kwargs...) = f
53185318

@@ -5562,10 +5562,10 @@ function IncrementingODEFunction{iip, specialize}(f) where {iip, specialize}
55625562
end
55635563

55645564
function IncrementingODEFunction{iip}(f) where {iip}
5565-
return IncrementingODEFunction{iip, DEFAULT_SPECIALIZATION}(f)
5565+
return IncrementingODEFunction{iip, FullSpecialize}(f)
55665566
end
55675567
function IncrementingODEFunction(f)
5568-
return IncrementingODEFunction{isinplace(f, 7), DEFAULT_SPECIALIZATION}(f)
5568+
return IncrementingODEFunction{isinplace(f, 7), FullSpecialize}(f)
55695569
end
55705570

55715571
(f::IncrementingODEFunction)(args...; kwargs...) = f.f(args...; kwargs...)
@@ -5590,7 +5590,7 @@ for S in [
55905590
function ConstructionBase.constructorof(::Type{<:$S{iip}}) where {
55915591
iip,
55925592
}
5593-
return (args...) -> $S{iip, DEFAULT_SPECIALIZATION, map(typeof, args)...}(args...)
5593+
return (args...) -> $S{iip, FullSpecialize, map(typeof, args)...}(args...)
55945594
end
55955595
end
55965596
end

0 commit comments

Comments
 (0)