Description
A potentially useful operation on a Graph
would be to replace a PipeOp
, or an entire subgraph, with a different Graph
. With this, one could "edit" the result of a ppl()
call, for example, if the pipeline happens to have a single / very few pipeops that are different than what would be desired. Currenlty the user would have to edit the connection table to do this, which may be a bit tedious.
Suggested UI for this would be Graph$replace_subgraph(ids, substitute)
, substitute
being something that can be turned into a graph using as_graph
. The operation would remove ids
from the graph, and do the equivalent of <channels into ids> %>>% substitute %>>% <channels out of ids>
inside the graph (This would entail automatic one-to-many and vararg channel handling, as well as type checking).