Source code for graph.nodes.core.random_collection_node

from enum import Enum

from graph.data.key_value_store import KeyValueStore
from graph.nodes.core.executable_node import ExecutableNode
from random_collections.random_collection_interface import IRandom


[docs] class RandomCollectionNode[V: Enum](ExecutableNode):
[docs] def __init__(self, value_type: type, parents, random_generator: IRandom): self.value_type = value_type self.random_generator = random_generator super().__init__(parents)
async def _execute_node(self, shared_storage: KeyValueStore) -> KeyValueStore: shared_storage.save(self.random_generator.get_random_value()) return shared_storage