Add annotations to networkx.algorithms.approximation.treewidth (#14983)

This commit is contained in:
Rickey K. Liang
2025-11-05 17:46:59 +01:00
committed by GitHub
parent d96c888e32
commit 65b8a85e4b
@@ -1,4 +1,6 @@
from _typeshed import Incomplete
from collections.abc import Callable, Mapping
from typing import Generic
from networkx.classes.graph import Graph, _Node
from networkx.utils.backends import _dispatchable
@@ -6,16 +8,18 @@ from networkx.utils.backends import _dispatchable
__all__ = ["treewidth_min_degree", "treewidth_min_fill_in"]
@_dispatchable
def treewidth_min_degree(G: Graph[_Node]): ...
def treewidth_min_degree(G: Graph[_Node]) -> tuple[int, Graph[frozenset[_Node]]]: ...
@_dispatchable
def treewidth_min_fill_in(G: Graph[_Node]): ...
def treewidth_min_fill_in(G: Graph[_Node]) -> tuple[int, Graph[frozenset[_Node]]]: ...
class MinDegreeHeuristic:
class MinDegreeHeuristic(Generic[_Node]):
count: Incomplete
def __init__(self, graph) -> None: ...
def best_node(self, graph): ...
def __init__(self, graph: Graph[_Node]) -> None: ...
def best_node(self, graph: Mapping[_Node, set[_Node]]) -> _Node | None: ...
def min_fill_in_heuristic(graph_dict) -> Incomplete | None: ...
def min_fill_in_heuristic(graph_dict: Mapping[_Node, set[_Node]]) -> _Node | None: ...
@_dispatchable
def treewidth_decomp(G: Graph[_Node], heuristic=...) -> tuple[int, Graph[_Node]]: ...
def treewidth_decomp(
G: Graph[_Node], heuristic: Callable[[dict[_Node, set[_Node]]], _Node | None] = ...
) -> tuple[int, Graph[frozenset[_Node]]]: ...