From 681eb26534e1aba360cf0dbd7ee0e96c3b56b5e1 Mon Sep 17 00:00:00 2001 From: Anthony Mahanna Date: Sat, 27 Apr 2024 10:28:40 -0400 Subject: [PATCH] fix: graph subclassing need to be careful here... --- nx_arangodb/classes/digraph.py | 3 ++- nx_arangodb/classes/multidigraph.py | 4 +++- nx_arangodb/classes/multigraph.py | 3 ++- 3 files changed, 7 insertions(+), 3 deletions(-) diff --git a/nx_arangodb/classes/digraph.py b/nx_arangodb/classes/digraph.py index cc9edb95..9c63e907 100644 --- a/nx_arangodb/classes/digraph.py +++ b/nx_arangodb/classes/digraph.py @@ -3,13 +3,14 @@ import networkx as nx import nx_arangodb as nxadb +from nx_arangodb.classes.graph import Graph networkx_api = nxadb.utils.decorators.networkx_class(nx.DiGraph) __all__ = ["DiGraph"] -class DiGraph(nx.DiGraph): +class DiGraph(nx.DiGraph, Graph): __networkx_backend__: ClassVar[str] = "arangodb" # nx >=3.2 __networkx_plugin__: ClassVar[str] = "arangodb" # nx <3.2 diff --git a/nx_arangodb/classes/multidigraph.py b/nx_arangodb/classes/multidigraph.py index 585d88e9..17d5f040 100644 --- a/nx_arangodb/classes/multidigraph.py +++ b/nx_arangodb/classes/multidigraph.py @@ -3,13 +3,15 @@ import networkx as nx import nx_arangodb as nxadb +from nx_arangodb.classes.digraph import DiGraph +from nx_arangodb.classes.multigraph import MultiGraph networkx_api = nxadb.utils.decorators.networkx_class(nx.MultiDiGraph) __all__ = ["MultiDiGraph"] -class MultiDiGraph(nx.MultiDiGraph): +class MultiDiGraph(nx.MultiDiGraph, MultiGraph, DiGraph): __networkx_backend__: ClassVar[str] = "arangodb" # nx >=3.2 __networkx_plugin__: ClassVar[str] = "arangodb" # nx <3.2 diff --git a/nx_arangodb/classes/multigraph.py b/nx_arangodb/classes/multigraph.py index 0a33a57b..167cb2d3 100644 --- a/nx_arangodb/classes/multigraph.py +++ b/nx_arangodb/classes/multigraph.py @@ -3,13 +3,14 @@ import networkx as nx import nx_arangodb as nxadb +from nx_arangodb.classes.graph import Graph networkx_api = nxadb.utils.decorators.networkx_class(nx.MultiGraph) __all__ = ["MultiGraph"] -class MultiGraph(nx.MultiGraph): +class MultiGraph(nx.MultiGraph, Graph): __networkx_backend__: ClassVar[str] = "arangodb" # nx >=3.2 __networkx_plugin__: ClassVar[str] = "arangodb" # nx <3.2