@@ -5,16 +5,15 @@ mutable struct Variable <: Expression
55 dependents:: Vector{Variable}
66end
77
8- Variable (name; subtype:: Symbol = :Variable , dependents:: Vector{Variable} = Variable[]) =
8+ Variable (name; subtype:: Symbol , dependents:: Vector{Variable} = Variable[]) =
99 Variable (name, subtype, nothing , dependents)
10- Variable (name, args... ; kwargs... ) = Variable (name, args... ; subtype= :Variable , kwargs... )
1110
1211Parameter (name,args... ;kwargs... ) = Variable (name,args... ;subtype= :Parameter ,kwargs... )
1312IndependentVariable (name,args... ;kwargs... ) = Variable (name,args... ;subtype= :IndependentVariable ,kwargs... )
1413DependentVariable (name,args... ;kwargs... ) = Variable (name,args... ;subtype= :DependentVariable ,kwargs... )
1514
1615export Variable,Parameter,Constant,DependentVariable,IndependentVariable,
17- @Var , @ Param , @Const , @DVar , @IVar
16+ @Param , @Const , @DVar , @IVar
1817
1918
2019Base. copy (x:: Variable ) = Variable (x. name, x. subtype, x. diff, x. dependents)
@@ -68,7 +67,7 @@ function _parse_vars(macroname, fun, x)
6867 @assert iscall || issym " @$macroname expects a tuple of expressions!\n E.g. `@$macroname x y z`"
6968
7069 if iscall
71- dependents = :([$ (_var. args[2 : end ]. .. )])
70+ dependents = :(Variable [$ (_var. args[2 : end ]. .. )])
7271 lhs = _var. args[1 ]
7372 else
7473 dependents = Variable[]
@@ -84,9 +83,7 @@ function _parse_vars(macroname, fun, x)
8483 return ex
8584end
8685
87- for funs in ((:DVar , :DependentVariable ), (:IVar , :IndependentVariable ),
88- (:Var , :Variable ),
89- (:Param , :Parameter ))
86+ for funs in [(:DVar , :DependentVariable ), (:IVar , :IndependentVariable ), (:Param , :Parameter )]
9087 @eval begin
9188 macro ($ (funs[1 ]))(x... )
9289 esc (_parse_vars (String ($ funs[1 ]), $ funs[2 ], x))
0 commit comments