Skip to content

Require subtypes to define encoded_graph - #194

Merged
mtfishman merged 6 commits into
mainfrom
mf/prerelease-docs-fixes
Sep 9, 2026
Merged

mtfishman merged 6 commits into
mainfrom
mf/prerelease-docs-fixes

Conversation

@mtfishman

@mtfishman mtfishman commented Sep 9, 2026 •

Copy link
Copy Markdown
Member

Summary

Makes encoded_graph required, with EncodedGraphView an explicit opt-in for types that compute their own topology. Its silent default was the view, which asks the named graph back for its topology, so a subtype defining only the vertex translation recursed. The view also gains has_edge(g, s, d), copy, and blockdiag, and eccentricities is documented and exported.

The developer page said a type without an integer graph only needs
`encoded_vertex` and `decoded_vertex`. A type built that way recurses on every
topology call, because `EncodedGraphView` answers those by asking the named
graph back. The page now says what such a type defines and describes the
`f_namedgraph` hooks. The `PartitionedGraphs` docstring put
`add_subquotientvertex!` under `Graphs`, where it does not exist.
Makes `encoded_graph` a required method, with `EncodedGraphView` an explicit
opt-in for types that compute their own topology. Its silent default was the
view, which asks the named graph back for its topology, so a subtype defining
only the vertex translation recursed. The view also gains `has_edge(g, s,
d)`, `copy`, and `blockdiag`, which Graphs.jl and the fallbacks call on it.
@mtfishman
mtfishman enabled auto-merge (squash) September 9, 2026 01:10
@mtfishman
mtfishman merged commit 94eb5c6 into main Sep 9, 2026
19 checks passed
@mtfishman
mtfishman deleted the mf/prerelease-docs-fixes branch September 9, 2026 01:19
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant