elasticai.creator.ir.datagraph_impl#

Module Contents#

Classes#

API#

class elasticai.creator.ir.datagraph_impl.NodeImpl(name: str, attributes: elasticai.creator.ir.attribute.AttributeMapping)[source]#

Bases: elasticai.creator.ir.datagraph.Node

__slots__#

(‘_name’, ‘_attributes’)

property name: str#
property type: str#
property attributes: elasticai.creator.ir.attribute.AttributeMapping#
__hash__() int[source]#
__repr__() str[source]#
__eq__(o: object) bool[source]#
class elasticai.creator.ir.datagraph_impl.EdgeImpl(src: str, dst: str, attributes: elasticai.creator.ir.attribute.AttributeMapping)[source]#

Bases: elasticai.creator.ir.datagraph.Edge

__slots__#

(‘_src’, ‘_dst’, ‘_attributes’)

property attributes: elasticai.creator.ir.attribute.AttributeMapping#
property src: str#
property dst: str#
__hash__() int[source]#
__eq__(other: object) bool[source]#
class elasticai.creator.ir.datagraph_impl.DefaultNodeEdgeFactory[source]#

Bases: elasticai.creator.ir.factories.NodeEdgeFactory[elasticai.creator.ir.datagraph.Node, elasticai.creator.ir.datagraph.Edge]

node(name: str, attributes: elasticai.creator.ir.attribute.AttributeMapping = AttributeMapping()) elasticai.creator.ir.datagraph.Node[source]#
edge(src: str, dst: str, attributes: elasticai.creator.ir.attribute.AttributeMapping = AttributeMapping()) elasticai.creator.ir.datagraph.Edge[source]#
class elasticai.creator.ir.datagraph_impl.EdgeView(successors: collections.abc.Mapping[str, collections.abc.Mapping[str, elasticai.creator.ir.attribute.AttributeMapping]], factory: elasticai.creator.ir.factories.NodeEdgeFactory[elasticai.creator.ir.datagraph.Node, E])[source]#

Bases: collections.abc.Mapping[tuple[str, str], elasticai.creator.ir.datagraph_impl.EdgeView.E]

__getitem__(key: tuple[str, str]) E[source]#
__iter__() collections.abc.Iterator[tuple[str, str]][source]#
__len__() int[source]#
class elasticai.creator.ir.datagraph_impl.NodeView(successors: collections.abc.Collection[str], attributes: elasticai.creator.ir.attribute.AttributeMapping, factory: elasticai.creator.ir.factories.NodeEdgeFactory[N, elasticai.creator.ir.datagraph.Edge])[source]#

Bases: collections.abc.Mapping[str, elasticai.creator.ir.datagraph_impl.NodeView.N]

__getitem__(key: str) N[source]#
__contains__(object) bool[source]#
__iter__() collections.abc.Iterator[str][source]#
__repr__() str[source]#
__len__() int[source]#
class elasticai.creator.ir.datagraph_impl.DataGraphImpl(/, factory: elasticai.creator.ir.attribute.AttributeMapping, attributes: elasticai.creator.ir.graph.Graph[str, elasticai.creator.ir.attribute.AttributeMapping], graph: elasticai.creator.ir.attribute.AttributeMapping, node_attributes)[source]#

Bases: elasticai.creator.ir.datagraph.DataGraph[elasticai.creator.ir.datagraph_impl.DataGraphImpl.N, elasticai.creator.ir.datagraph_impl.DataGraphImpl.E]

Keep constructor signature when subclassing!

Initialization

__slots__#

(‘_factory’, ‘_graph’, ‘_attributes’, ‘_nodes’)

property node_attributes: elasticai.creator.ir.attribute.AttributeMapping#
property graph: elasticai.creator.ir.graph.Graph[str, elasticai.creator.ir.attribute.AttributeMapping]#
new_from_read_only_data_graph(g: elasticai.creator.ir.datagraph.ReadOnlyDataGraph) Self[source]#
property attributes: elasticai.creator.ir.attribute.AttributeMapping#
property successors: collections.abc.Mapping[str, collections.abc.Mapping[str, elasticai.creator.ir.attribute.AttributeMapping]]#
property predecessors: collections.abc.Mapping[str, collections.abc.Mapping[str, elasticai.creator.ir.attribute.AttributeMapping]]#
property edges: collections.abc.Mapping[tuple[str, str], E]#
property nodes: collections.abc.Mapping[str, N]#
add_edge(src: str | elasticai.creator.ir.datagraph.Edge, dst: str | None = None, attributes: elasticai.creator.ir.attribute.AttributeMapping | None = None, /) Self[source]#

Updates edge in case it exists already. Possibly already existing nodes remain unchanged.

add_edges(*edges: elasticai.creator.ir.datagraph.Edge | tuple[str, str, elasticai.creator.ir.attribute.AttributeMapping] | tuple[str, str]) Self[source]#

Updates edges in case they exist already. Possibly already existing nodes remain unchanged.

add_node(name: str | elasticai.creator.ir.datagraph.Node, attributes: elasticai.creator.ir.attribute.AttributeMapping | None = None, /) Self[source]#

Updates node in case it exists already.

add_nodes(*nodes: elasticai.creator.ir.datagraph.Node | tuple[str, elasticai.creator.ir.attribute.AttributeMapping] | str) Self[source]#

Updates nodes in case they exist already.

remove_node(node: str, /) Self[source]#

Will remove node and all connected edges.

remove_edge(src: str, dst: str) Self[source]#

Will not remove nodes, even if they become isolated.

with_attributes(attributes: elasticai.creator.ir.attribute.AttributeMapping) Self[source]#
property factory: elasticai.creator.ir.factories.NodeEdgeFactory[N, E]#
new(/, attributes: elasticai.creator.ir.graph.Graph[str, elasticai.creator.ir.attribute.AttributeMapping], graph: elasticai.creator.ir.attribute.AttributeMapping, node_attributes) Self[source]#
__eq__(other: object) bool[source]#
class elasticai.creator.ir.datagraph_impl.DefaultDataGraphFactory(node_edge_factory: elasticai.creator.ir.factories.NodeEdgeFactory[N, E])[source]#

Bases: elasticai.creator.ir.factories.StdDataGraphFactory[elasticai.creator.ir.datagraph_impl.DefaultDataGraphFactory.N, elasticai.creator.ir.datagraph_impl.DefaultDataGraphFactory.E, elasticai.creator.ir.datagraph.DataGraph]

class elasticai.creator.ir.datagraph_impl.DefaultIrFactory[source]#

Bases: elasticai.creator.ir.factories.StdIrFactory[elasticai.creator.ir.datagraph.Node, elasticai.creator.ir.datagraph.Edge, elasticai.creator.ir.datagraph.DataGraph[elasticai.creator.ir.datagraph.Node, elasticai.creator.ir.datagraph.Edge]]

Initialization