StockFlow.jl
StockFlow.jl copied to clipboard
Open fails when given no feet
julia> OpenStockAndFlowF{Symbol, Symbol, Int8}(StockAndFlowF())
ERROR: Empty list of legs but no apex given
Stacktrace:
[1] error(s::String)
@ Base ./error.jl:35
[2] Multicospan(legs::StaticArraysCore.SVector{0, Union{}})
@ Catlab.CategoricalAlgebra.FreeDiagrams ~/.julia/packages/Catlab/rJ36m/src/categorical_algebra/FreeDiagrams.jl:175
[3] (SMulticospan{0, Ob, Hom, <:StaticArraysCore.StaticArray{Tuple{0}, Hom, 1}} where {Ob, Hom})()
@ Catlab.CategoricalAlgebra.FreeDiagrams ~/.julia/packages/Catlab/rJ36m/src/categorical_algebra/FreeDiagrams.jl:185
[4] (StructuredMulticospan{Catlab.CategoricalAlgebra.StructuredCospans.DiscreteACSet{StockAndFlow0, StockAndFlowF}})(::StockAndFlowF)
@ Catlab.CategoricalAlgebra.StructuredCospans ~/.julia/packages/Catlab/rJ36m/src/categorical_algebra/StructuredCospans.jl:267
[5] top-level scope
@ REPL[25]:1
(same error when doing Open(StockAndFlowF()) )
Trying to deal with cases where you're composing StockFlows with an empty list of feet.
Could provide feet with no stocks and flows to every sf, though that doesn't seem like a good solution.
I think you specify the empty interfaces as the empty list [] as opposed to a missing argument.