def __or__(self, other):
        out = self._tool.options.get_default_output()
        if isinstance(other, _NodeProxy):
            for o in other._nodes:
                self.__or__(o)
        else:
            inp = other._tool.options.get_default_input()
            if out is not None and inp is not None:
                other._set_option_value(inp, out, allow_stream=True,
                                        append=inp.is_list())
            else:
                # just add an edge
                self._graph.add_edge(self, other)
        return other
Create an edge from this node to the other node and
dataset/ETHPy150Open thasso/pyjip/jip/pipelines.py/Node.__or__