File tree 2 files changed +26
-0
lines changed 2 files changed +26
-0
lines changed Original file line number Diff line number Diff line change @@ -9,12 +9,14 @@ MathOptInterface = "b8f27783-ece8-5eb3-8dc8-9495eed66fee"
9
9
MutableArithmetics = " d8a4904e-b15c-11e9-3269-09a3773c0cb0"
10
10
OrderedCollections = " bac558e1-5e72-5ebc-8fee-abe8a469f55d"
11
11
Printf = " de0858da-6303-5e67-8744-51eddeeeb8d7"
12
+ SnoopPrecompile = " 66db9d55-30c0-4569-8b51-7e840670fc0c"
12
13
SparseArrays = " 2f01184e-e22b-5df5-ae63-d93ebab69eaf"
13
14
14
15
[compat ]
15
16
MathOptInterface = " 1.11"
16
17
MutableArithmetics = " 1"
17
18
OrderedCollections = " 1"
19
+ SnoopPrecompile = " 1"
18
20
julia = " 1.6"
19
21
20
22
[extras ]
Original file line number Diff line number Diff line change @@ -807,6 +807,30 @@ for sym in names(@__MODULE__; all = true)
807
807
@eval export $ sym
808
808
end
809
809
810
+ using SnoopPrecompile
811
+
812
+ @precompile_all_calls begin
813
+ # Because lots of the work is done by macros, and macros are expanded
814
+ # at lowering time, not much of this would get precompiled without `@eval`
815
+ @eval begin
816
+ let
817
+ model = Model (
818
+ () -> MOI. Utilities. MockOptimizer (
819
+ MOI. Utilities. UniversalFallback (
820
+ MOI. Utilities. Model {Float64} (),
821
+ ),
822
+ ),
823
+ )
824
+ @variable (model, x >= 0 )
825
+ @variable (model, 0 <= y <= 3 )
826
+ @objective (model, Min, 12 x + 20 y)
827
+ @constraint (model, c1, 6 x + 8 y >= 100 )
828
+ @constraint (model, c2, 7 x + 12 y >= 120 )
829
+ optimize! (model)
830
+ end
831
+ end
832
+ end
833
+
810
834
include (" precompile.jl" )
811
835
_precompile_ ()
812
836
You can’t perform that action at this time.
0 commit comments