Selaa lähdekoodia

feat: allow `node.id` to be specified and not automatically generated (#422)

* allow node.id to be specified and not generated

* typing suport for context functions

Co-authored-by: Ivan Melnychuk <ivan.melnychuk@pg3.ch>
pull/435/merge
vanife 2 vuotta sitten
committed by GitHub
vanhempi
commit
3c72e76be0
No known key found for this signature in database GPG Key ID: 4AEE18F83AFDEB23
1 muutettua tiedostoa jossa 7 lisäystä ja 7 poistoa
  1. +7
    -7
      diagrams/__init__.py

+ 7
- 7
diagrams/__init__.py Näytä tiedosto

@@ -15,25 +15,25 @@ __diagram = contextvars.ContextVar("diagrams")
__cluster = contextvars.ContextVar("cluster")


def getdiagram():
def getdiagram() -> "Diagram":
try:
return __diagram.get()
except LookupError:
return None


def setdiagram(diagram):
def setdiagram(diagram: "Diagram"):
__diagram.set(diagram)


def getcluster():
def getcluster() -> "Cluster":
try:
return __cluster.get()
except LookupError:
return None


def setcluster(cluster):
def setcluster(cluster: "Cluster"):
__cluster.set(cluster)


@@ -283,13 +283,13 @@ class Node:

_height = 1.9

def __init__(self, label: str = "", **attrs: Dict):
def __init__(self, label: str = "", *, nodeid: str = None, **attrs: Dict):
"""Node represents a system component.

:param label: Node label.
"""
# Generates an ID for identifying a node.
self._id = self._rand_id()
# Generates an ID for identifying a node, unless specified
self._id = nodeid or self._rand_id()
self.label = label

# fmt: off


Ladataan…
Peruuta
Tallenna