Module pygmlparser.Graph
Expand source code
from typing import cast
from typing import Dict
from typing import List
from typing import NewType
from pygmlparser.Edge import Edge
from pygmlparser.Node import Node
from pygmlparser.exceptions.GMLParseException import GMLParseException
class Graph:
Edges = NewType('Edges', List[Edge])
Nodes = NewType('Nodes', Dict[int, Node])
def __init__(self):
self.graphNodes: Graph.Nodes = cast(Graph.Nodes, {})
"""
Map of node IDs to Nodes
"""
self.graphEdges: Graph.Edges = cast(Graph.Edges, [])
"""
List of Edges
"""
def validate(self, rawIdx: int, nodeId: int):
if nodeId in self.graphNodes:
raise GMLParseException(f'[pos {rawIdx}] redefinition of node id: {nodeId}')
def __repr__(self):
retStr: str = ''
for nodeKey in self.graphNodes.keys():
retStr = f'{retStr} node: {nodeKey} - {self.graphNodes[nodeKey]}'
for edge in self.graphEdges:
retStr = f'{retStr} --- {edge}'
return retStr
Classes
class Graph
-
Expand source code
class Graph: Edges = NewType('Edges', List[Edge]) Nodes = NewType('Nodes', Dict[int, Node]) def __init__(self): self.graphNodes: Graph.Nodes = cast(Graph.Nodes, {}) """ Map of node IDs to Nodes """ self.graphEdges: Graph.Edges = cast(Graph.Edges, []) """ List of Edges """ def validate(self, rawIdx: int, nodeId: int): if nodeId in self.graphNodes: raise GMLParseException(f'[pos {rawIdx}] redefinition of node id: {nodeId}') def __repr__(self): retStr: str = '' for nodeKey in self.graphNodes.keys(): retStr = f'{retStr} node: {nodeKey} - {self.graphNodes[nodeKey]}' for edge in self.graphEdges: retStr = f'{retStr} --- {edge}' return retStr
Instance variables
var graphEdges
-
List of Edges
var graphNodes
-
Map of node IDs to Nodes
Methods
def Edges(x)
-
Expand source code
def new_type(x): return x
def Nodes(x)
-
Expand source code
def new_type(x): return x
def validate(self, rawIdx: int, nodeId: int)
-
Expand source code
def validate(self, rawIdx: int, nodeId: int): if nodeId in self.graphNodes: raise GMLParseException(f'[pos {rawIdx}] redefinition of node id: {nodeId}')