Skip to content

Commit 2c83233

Browse files
fixup! fix: improve inference of several utility functions
1 parent 288cb10 commit 2c83233

File tree

1 file changed

+8
-3
lines changed

1 file changed

+8
-3
lines changed

src/utils.jl

Lines changed: 8 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -692,28 +692,33 @@ eqtype_supports_collect_vars(eq::Equation) = true
692692
eqtype_supports_collect_vars(eq::Inequality) = true
693693
eqtype_supports_collect_vars(eq::Pair) = true
694694

695-
function collect_vars!(unknowns, parameters, eq::Union{Equation, Inequality}, iv;
695+
function collect_vars!(unknowns::OrderedSet{SymbolicT}, parameters::OrderedSet{SymbolicT}, eq::Union{Equation, Inequality}, iv::Union{SymbolicT, Nothing};
696696
depth = 0, op = Symbolics.Operator)
697697
collect_vars!(unknowns, parameters, eq.lhs, iv; depth, op)
698698
collect_vars!(unknowns, parameters, eq.rhs, iv; depth, op)
699699
return nothing
700700
end
701701

702702
function collect_vars!(
703-
unknowns, parameters, p::Pair, iv; depth = 0, op = Symbolics.Operator)
703+
unknowns::OrderedSet{SymbolicT}, parameters::OrderedSet{SymbolicT}, p::Pair, iv::Union{SymbolicT, Nothing}; depth = 0, op = Symbolics.Operator)
704704
collect_vars!(unknowns, parameters, p[1], iv; depth, op)
705705
collect_vars!(unknowns, parameters, p[2], iv; depth, op)
706706
return nothing
707707
end
708708

709+
function collect_vars!(
710+
unknowns::OrderedSet{SymbolicT}, parameters::OrderedSet{SymbolicT}, expr, iv::Union{SymbolicT, Nothing}; depth = 0, op = Symbolics.Operator)
711+
return nothing
712+
end
713+
709714
"""
710715
$(TYPEDSIGNATURES)
711716
712717
Identify whether `var` belongs to the current system using `depth` and scoping information.
713718
Add `var` to `unknowns` or `parameters` appropriately, and search through any expressions
714719
in known metadata of `var` using `collect_vars!`.
715720
"""
716-
function collect_var!(unknowns, parameters, var, iv; depth = 0)
721+
function collect_var!(unknowns::OrderedSet{SymbolicT}, parameters::OrderedSet{SymbolicT}, var::SymbolicT, iv::Union{SymbolicT, Nothing}; depth = 0)
717722
isequal(var, iv) && return nothing
718723
if Symbolics.iswrapped(var)
719724
error("""

0 commit comments

Comments
 (0)