瀏覽代碼

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 年之前
committed by GitHub
父節點
當前提交
3c72e76be0
沒有發現已知的金鑰在資料庫的簽署中 GPG 金鑰 ID: 4AEE18F83AFDEB23
共有 1 個檔案被更改,包括 7 行新增7 行删除
  1. +7
    -7
      diagrams/__init__.py

+ 7
- 7
diagrams/__init__.py 查看文件

@@ -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


Loading…
取消
儲存