Methods missing for drawing schemas
Opened this issue · 0 comments
jpfairbanks commented
If you try to draw a TypedSchema with to_graphviz
, you get a MethodError.
julia> Presentation(SchNamedDecapode)
ERROR: MethodError: no method matching Presentation(::TypedSchema{Symbol, InterType})
Closest candidates are:
Presentation(::BasicSchema{Symbol})
@ Catlab ~/.julia/packages/Catlab/5M12F/src/categorical_algebra/ACSetsGATsInterop.jl:69
Presentation(::Module)
@ GATlab ~/.julia/packages/GATlab/UL4sq/src/models/Presentations.jl:47
Presentation(::Type{S}) where S<:(TypeLevelBasicSchema{Symbol})
@ Catlab ~/.julia/packages/Catlab/5M12F/src/categorical_algebra/ACSetsGATsInterop.jl:52
...
Stacktrace:
[1] top-level scope
@ REPL[8]:1
This can be fixed with the following method Catlab.to_graphviz(s::TypedSchema) = to_graphviz(Presentation(s.schema))
. It would be nice to also extend Presentation to accept a typed schema so that you could draw it with concrete types Presentation(s::TypedSchema)
. But this 1 liner is a quick fix that would get you 90% of the way there.