本文整理汇总了Python中vunit.dependency_graph.DependencyGraph.add_node方法的典型用法代码示例。如果您正苦于以下问题:Python DependencyGraph.add_node方法的具体用法?Python DependencyGraph.add_node怎么用?Python DependencyGraph.add_node使用的例子?那么恭喜您, 这里精选的方法代码示例或许可以为您提供帮助。您也可以进一步了解该方法所在类vunit.dependency_graph.DependencyGraph
的用法示例。
在下文中一共展示了DependencyGraph.add_node方法的3个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的Python代码示例。
示例1: test_should_resort_after_additions
# 需要导入模块: from vunit.dependency_graph import DependencyGraph [as 别名]
# 或者: from vunit.dependency_graph.DependencyGraph import add_node [as 别名]
def test_should_resort_after_additions(self):
nodes = ["a", "b", "c", "d", "e", "f"]
dependencies = [("a", "b"), ("a", "c"), ("b", "d"), ("e", "f")]
graph = DependencyGraph()
self._add_nodes_and_dependencies(graph, nodes, dependencies)
graph.toposort()
dependencies = [("a", "b"), ("a", "c"), ("b", "d"), ("e", "f"), ("b", "g")]
graph.add_node("g")
graph.add_dependency("b", "g")
result = graph.toposort()
self._check_result(result, dependencies)
示例2: test_should_resort_after_additions
# 需要导入模块: from vunit.dependency_graph import DependencyGraph [as 别名]
# 或者: from vunit.dependency_graph.DependencyGraph import add_node [as 别名]
def test_should_resort_after_additions(self):
nodes = ['a', 'b', 'c', 'd', 'e', 'f']
dependencies = [('a', 'b'), ('a', 'c'), ('b', 'd'), ('e', 'f')]
g = DependencyGraph()
self._add_nodes_and_dependencies(g, nodes, dependencies)
g.toposort()
dependencies = [('a', 'b'), ('a', 'c'), ('b', 'd'), ('e', 'f'), ('b', 'g')]
g.add_node('g')
g.add_dependency('b', 'g')
result = g.toposort()
for d in dependencies:
self.assertTrue(result.index(d[0]) < result.index(d[1]), "%s is not before %s" % d)
示例3: _create_dependency_graph
# 需要导入模块: from vunit.dependency_graph import DependencyGraph [as 别名]
# 或者: from vunit.dependency_graph.DependencyGraph import add_node [as 别名]
def _create_dependency_graph(self):
"""
Create a DependencyGraph object of the HDL code project
"""
def add_dependency(start, end):
"""
Utility to add dependency
"""
if start.name == end.name:
return
is_new = dependency_graph.add_dependency(start, end)
if is_new:
LOGGER.info('Adding dependency: %s depends on %s', end.name, start.name)
def add_dependencies(dependency_function, files):
"""
Utility to add all dependencies returned by a dependency_function
returning an iterator of dependencies
"""
for source_file in files:
for dependency in dependency_function(source_file):
add_dependency(dependency, source_file)
dependency_graph = DependencyGraph()
for source_file in self.get_source_files_in_order():
dependency_graph.add_node(source_file)
vhdl_files = [source_file
for source_file in self.get_source_files_in_order()
if source_file.file_type == 'vhdl']
add_dependencies(self._find_other_design_unit_dependencies, vhdl_files)
add_dependencies(self._find_primary_secondary_design_unit_dependencies, vhdl_files)
verilog_files = [source_file
for source_file in self.get_source_files_in_order()
if source_file.file_type == 'verilog']
add_dependencies(self._find_verilog_package_dependencies, verilog_files)
add_dependencies(self._find_verilog_module_dependencies, verilog_files)
if self._depend_on_components:
add_dependencies(self._find_component_design_unit_dependencies, vhdl_files)
return dependency_graph