diff --git a/Project.toml b/Project.toml index 8c085d797..61e8788ba 100644 --- a/Project.toml +++ b/Project.toml @@ -21,6 +21,7 @@ LinearAlgebra = "37e2e46d-f89d-539d-b4ee-838fcccc9c8e" MacroTools = "1914dd2f-81c6-5fcd-8719-6d5c9610ff09" Markdown = "d6f4376e-aef5-505a-96c1-9c027394607a" NaNMath = "77ba4419-2d1f-58cd-9bb1-8ffee604a2e3" +PrecompileTools = "aea7be01-6a6a-4083-8856-8a6e6704d82a" RecipesBase = "3cdcf5f2-1ef4-517c-9805-6587b60abb01" Reexport = "189a3867-3050-52da-a836-e630ba90ab69" Requires = "ae029012-a4dd-5104-9daa-d747884805df" @@ -50,6 +51,7 @@ DomainSets = "0.6" Groebner = "0.3, 0.4" IfElse = "0.1" LaTeXStrings = "1.3" +LambertW = "0.4.5" Latexify = "0.11, 0.12, 0.13, 0.14, 0.15, 0.16" MacroTools = "0.5" NaNMath = "0.3, 1" @@ -64,7 +66,6 @@ SpecialFunctions = "0.7, 0.8, 0.9, 0.10, 1.0, 2" StaticArrays = "1.1" SymbolicUtils = "1.0.1" TreeViews = "0.3" -LambertW = "0.4.5" julia = "1.6" [extras] diff --git a/src/Symbolics.jl b/src/Symbolics.jl index 1b7e0c066..dac0a9be1 100644 --- a/src/Symbolics.jl +++ b/src/Symbolics.jl @@ -2,45 +2,41 @@ $(DocStringExtensions.README) """ module Symbolics +using PrecompileTools -using DocStringExtensions, Markdown +@recompile_invalidations begin + using DocStringExtensions, Markdown + using LinearAlgebra + using Reexport + using DomainSets + using Setfield + import DomainSets: Domain + + import SymbolicUtils: similarterm, istree, operation, arguments, symtype, metadata -using LinearAlgebra + import SymbolicUtils: Term, Add, Mul, Pow, Sym, Div, BasicSymbolic, + FnType, @rule, Rewriters, substitute, + promote_symtype, isadd, ismul, ispow, isterm, issym, isdiv -using Reexport + using SymbolicUtils.Code -using DomainSets + import SymbolicUtils.Rewriters: Chain, Prewalk, Postwalk, Fixpoint -using Setfield + import SymbolicUtils.Code: toexpr -import DomainSets: Domain -@reexport using SymbolicUtils - -import SymbolicUtils: similarterm, istree, operation, arguments, symtype, metadata - -import SymbolicUtils: Term, Add, Mul, Pow, Sym, Div, BasicSymbolic, - FnType, @rule, Rewriters, substitute, - promote_symtype, isadd, ismul, ispow, isterm, issym, isdiv - -using SymbolicUtils.Code - -import SymbolicUtils.Rewriters: Chain, Prewalk, Postwalk, Fixpoint + import ArrayInterface -import SymbolicUtils.Code: toexpr - -import ArrayInterface + using RuntimeGeneratedFunctions + using SciMLBase, IfElse +end +@reexport using SymbolicUtils -using RuntimeGeneratedFunctions RuntimeGeneratedFunctions.init(@__MODULE__) - # re-export export simplify, substitute -using SciMLBase, IfElse export Num -using MacroTools -import MacroTools: splitdef, combinedef, postwalk, striplines include("wrapper-types.jl") include("num.jl")