in runtool/runtool/datatypes.py [0:0]
def __mul__(self, other: Union["Node", "ListNode"]) -> "Experiments":
"""
Calculates the cartesian product of items in
`self` and `other` and returns an `Experiment` object
with the results.
"""
if isinstance(other, ListNode) and not isinstance(
other, (Experiments, Experiment)
):
return Experiments(
[
Experiment.from_nodes(node_1, node_2)
for node_1 in self
for node_2 in other
]
)
elif isinstance(other, Node):
return Experiments(
[Experiment.from_nodes(item, other) for item in self]
)
raise TypeError