From bc54fca2019508b8b14c64cd122c8392de7029ed Mon Sep 17 00:00:00 2001 From: Frames White Date: Mon, 15 Jan 2024 12:16:17 +0800 Subject: [PATCH] Replace MacroTools with ExprTools & Base.remove_lines! --- Project.toml | 4 ++-- src/ModelingToolkit.jl | 3 +-- src/systems/abstractsystem.jl | 2 +- src/systems/diffeqs/abstractodesystem.jl | 10 +++++----- src/systems/diffeqs/sdesystem.jl | 4 ++-- src/systems/discrete_system/discrete_system.jl | 4 ++-- src/systems/nonlinear/nonlinearsystem.jl | 4 ++-- 7 files changed, 15 insertions(+), 16 deletions(-) diff --git a/Project.toml b/Project.toml index 5b9a9bf0ac..2744d31355 100644 --- a/Project.toml +++ b/Project.toml @@ -18,6 +18,7 @@ Distributions = "31c24e10-a181-5473-b8eb-7969acd0382f" DocStringExtensions = "ffbed154-4ef7-542d-bbb7-c09d3a79fcae" DomainSets = "5b8099bc-c8ec-5219-889f-1d9e522a28bf" DynamicQuantities = "06fc5a27-2a28-4c7c-a15d-362465fb6821" +ExprTools = "e2ba6199-217a-4e67-a87a-7c52f15ade04" ForwardDiff = "f6369f11-7733-5829-9624-2563aa707210" FunctionWrappersWrappers = "77dc65aa-8811-40c2-897b-53d922fa7daf" Graphs = "86223c79-3864-5bf0-83f7-82e725a168b6" @@ -30,7 +31,6 @@ Latexify = "23fbe1c1-3f47-55db-b15f-69d7ec21a316" Libdl = "8f399da3-3557-5675-b5ff-fb832c97cbdb" LinearAlgebra = "37e2e46d-f89d-539d-b4ee-838fcccc9c8e" MLStyle = "d8e11817-5142-5d16-987a-aa16d5891078" -MacroTools = "1914dd2f-81c6-5fcd-8719-6d5c9610ff09" NaNMath = "77ba4419-2d1f-58cd-9bb1-8ffee604a2e3" OrdinaryDiffEq = "1dea7af3-3e70-54e6-95c3-0bf5283fa5ed" PrecompileTools = "aea7be01-6a6a-4083-8856-8a6e6704d82a" @@ -74,6 +74,7 @@ Distributions = "0.23, 0.24, 0.25" DocStringExtensions = "0.7, 0.8, 0.9" DomainSets = "0.6" DynamicQuantities = "0.8, 0.9, 0.10" +ExprTools = "1" ForwardDiff = "0.10.3" FunctionWrappersWrappers = "0.1" Graphs = "1.5.2" @@ -86,7 +87,6 @@ Latexify = "0.11, 0.12, 0.13, 0.14, 0.15, 0.16" Libdl = "1" LinearAlgebra = "1" MLStyle = "0.4.17" -MacroTools = "0.5" NaNMath = "0.3, 1" OrdinaryDiffEq = "6" PrecompileTools = "1" diff --git a/src/ModelingToolkit.jl b/src/ModelingToolkit.jl index b0197245f9..df1dca86e7 100644 --- a/src/ModelingToolkit.jl +++ b/src/ModelingToolkit.jl @@ -13,7 +13,6 @@ using PrecompileTools, Reexport using StaticArrays, LinearAlgebra, SparseArrays, LabelledArrays using InteractiveUtils using Latexify, Unitful, ArrayInterface - using MacroTools using Setfield, ConstructionBase using JumpProcesses using DataStructures @@ -23,7 +22,7 @@ using PrecompileTools, Reexport using Base.Threads using DiffEqCallbacks using Graphs - import MacroTools: splitdef, combinedef, postwalk, striplines + import ExprTools: splitdef, combinedef import Libdl using DocStringExtensions using Base: RefValue diff --git a/src/systems/abstractsystem.jl b/src/systems/abstractsystem.jl index 2c9f1884fa..7234c6d552 100644 --- a/src/systems/abstractsystem.jl +++ b/src/systems/abstractsystem.jl @@ -921,7 +921,7 @@ function toexpr(sys::AbstractSystem) name = $name, checks = false))) end - striplines(expr) # keeping the line numbers is never helpful + Base.remove_linenums!(expr) # keeping the line numbers is never helpful end Base.write(io::IO, sys::AbstractSystem) = write(io, readable_code(toexpr(sys))) diff --git a/src/systems/diffeqs/abstractodesystem.jl b/src/systems/diffeqs/abstractodesystem.jl index 88a1ed9bb3..47d7800da1 100644 --- a/src/systems/diffeqs/abstractodesystem.jl +++ b/src/systems/diffeqs/abstractodesystem.jl @@ -757,7 +757,7 @@ function ODEFunctionExpr{iip}(sys::AbstractODESystem, dvs = states(sys), sparsity = $(sparsity ? jacobian_sparsity(sys) : nothing), observed = $observedfun_exp) end - !linenumbers ? striplines(ex) : ex + !linenumbers ? Base.remove_linenums!(ex) : ex end """ @@ -886,7 +886,7 @@ function DAEFunctionExpr{iip}(sys::AbstractODESystem, dvs = states(sys), $_f ODEFunction{$iip}($fsym) end - !linenumbers ? striplines(ex) : ex + !linenumbers ? Base.remove_linenums!(ex) : ex end function DAEFunctionExpr(sys::AbstractODESystem, args...; kwargs...) @@ -1179,7 +1179,7 @@ function ODEProblemExpr{iip}(sys::AbstractODESystem, u0map, tspan, p = $p $odep end - !linenumbers ? striplines(ex) : ex + !linenumbers ? Base.remove_linenums!(ex) : ex end function ODEProblemExpr(sys::AbstractODESystem, args...; kwargs...) @@ -1228,7 +1228,7 @@ function DAEProblemExpr{iip}(sys::AbstractODESystem, du0map, u0map, tspan, differential_vars = $differential_vars $prob end - !linenumbers ? striplines(ex) : ex + !linenumbers ? Base.remove_linenums!(ex) : ex end function DAEProblemExpr(sys::AbstractODESystem, args...; kwargs...) @@ -1298,7 +1298,7 @@ function SteadyStateProblemExpr{iip}(sys::AbstractODESystem, u0map, p = $p $prob end - !linenumbers ? striplines(ex) : ex + !linenumbers ? Base.remove_linenums!(ex) : ex end function SteadyStateProblemExpr(sys::AbstractODESystem, args...; kwargs...) diff --git a/src/systems/diffeqs/sdesystem.jl b/src/systems/diffeqs/sdesystem.jl index 5f3f9fb00f..eb053ee2ee 100644 --- a/src/systems/diffeqs/sdesystem.jl +++ b/src/systems/diffeqs/sdesystem.jl @@ -562,7 +562,7 @@ function SDEFunctionExpr{iip}(sys::SDESystem, dvs = states(sys), indepsym = $(Symbol(get_iv(sys))), paramsyms = $(Symbol.(parameters(sys)))) end - !linenumbers ? striplines(ex) : ex + !linenumbers ? Base.remove_linenums!(ex) : ex end function SDEFunctionExpr(sys::SDESystem, args...; kwargs...) @@ -656,7 +656,7 @@ function SDEProblemExpr{iip}(sys::SDESystem, u0map, tspan, SDEProblem(f, u0, tspan, p; noise_rate_prototype = noise_rate_prototype, $(kwargs...)) end - !linenumbers ? striplines(ex) : ex + !linenumbers ? Base.remove_linenums!(ex) : ex end function SDEProblemExpr(sys::SDESystem, args...; kwargs...) diff --git a/src/systems/discrete_system/discrete_system.jl b/src/systems/discrete_system/discrete_system.jl index dedb7bf6b3..d528d460ab 100644 --- a/src/systems/discrete_system/discrete_system.jl +++ b/src/systems/discrete_system/discrete_system.jl @@ -412,7 +412,7 @@ function DiscreteFunctionExpr{iip}(sys::DiscreteSystem, dvs = states(sys), indepsym = $(QuoteNode(Symbol(get_iv(sys)))), paramsyms = $(Symbol.(parameters(sys)))) end - !linenumbers ? striplines(ex) : ex + !linenumbers ? Base.remove_linenums!(ex) : ex end function DiscreteFunctionExpr(sys::DiscreteSystem, args...; kwargs...) @@ -460,5 +460,5 @@ function DiscreteProblemExpr{iip}(sys::DiscreteSystem, u0map, tspan, tspan = $tspan DiscreteProblem(f, u0, tspan, p; $(filter_kwargs(kwargs)...)) end - !linenumbers ? striplines(ex) : ex + !linenumbers ? Base.remove_linenums!(ex) : ex end diff --git a/src/systems/nonlinear/nonlinearsystem.jl b/src/systems/nonlinear/nonlinearsystem.jl index 8ed1e198f8..235ef452f8 100644 --- a/src/systems/nonlinear/nonlinearsystem.jl +++ b/src/systems/nonlinear/nonlinearsystem.jl @@ -318,7 +318,7 @@ function NonlinearFunctionExpr{iip}(sys::NonlinearSystem, dvs = states(sys), syms = $(Symbol.(states(sys))), paramsyms = $(Symbol.(parameters(sys)))) end - !linenumbers ? striplines(ex) : ex + !linenumbers ? Base.remove_linenums!(ex) : ex end function process_NonlinearProblem(constructor, sys::NonlinearSystem, u0map, parammap; @@ -406,7 +406,7 @@ function NonlinearProblemExpr{iip}(sys::NonlinearSystem, u0map, p = $p NonlinearProblem(f, u0, p; $(filter_kwargs(kwargs)...)) end - !linenumbers ? striplines(ex) : ex + !linenumbers ? Base.remove_linenums!(ex) : ex end function flatten(sys::NonlinearSystem, noeqs = false)