nodeslicer/core/nodeslicer/nodes/system/join_execution.py
2026-10-15 14:13:39 +03:00

20 lines
722 B
Python

from __future__ import annotations
from .....registry import register_class
from ..base import ExecSliceNode, SliceNodeJoiner
@register_class
class SLICENODE_JoinExecution(SliceNodeJoiner):
bl_label = "Join Execution"
socket_type = "SLICESOCK_ExecutionLink"
def evaluate_output(self, socket_name: str, **_kwargs) -> list[ExecSliceNode]:
from .....infra.blender.blender_slice_nodes_generic import resolve_input
nodes: list[ExecSliceNode] = []
for input in self.inputs:
res = resolve_input(input)
if isinstance(res, ExecSliceNode):
nodes.append(res)
elif isinstance(res, list):
nodes.extend(res)
return nodes