# Module: reroute

### tf.contrib.graph_editor.swap_ts(ts0, ts1, can_modify=None, cannot_modify=None)

For each tensor's pair, swap the end of (t0,t1).

B0 B1 B0 B1 | | => X A0 A1 A0 A1

##### Args:
• ts0: an object convertible to a list of tf.Tensor.
• ts1: an object convertible to a list of tf.Tensor.
• can_modify: iterable of operations which can be modified. Any operation outside within_ops will be left untouched by this function.
• cannot_modify: iterable of operations which cannot be modified. Any operation within cannot_modify will be left untouched by this function.
##### Returns:

The number of individual modifications made by the function.

##### Raises:
• TypeError: if ts0 or ts1 cannot be converted to a list of tf.Tensor.
• TypeError: if can_modify or cannot_modify is not None and cannot be converted to a list of tf.Operation.

### tf.contrib.graph_editor.reroute_a2b_ts(ts0, ts1, can_modify=None, cannot_modify=None)

For each tensor's pair, replace the end of t1 by the end of t0.

B0 B1 B0 B1 | | => |/ A0 A1 A0 A1

The end of the tensors in ts1 are left dangling.

##### Args:
• ts0: an object convertible to a list of tf.Tensor.
• ts1: an object convertible to a list of tf.Tensor.
• can_modify: iterable of operations which can be modified. Any operation outside within_ops will be left untouched by this function.
• cannot_modify: iterable of operations which cannot be modified. Any operation within cannot_modify will be left untouched by this function.
##### Returns:

The number of individual modifications made by the function.

##### Raises:
• TypeError: if ts0 or ts1 cannot be converted to a list of tf.Tensor.
• TypeError: if can_modify or cannot_modify is not None and cannot be converted to a list of tf.Operation.

### tf.contrib.graph_editor.reroute_b2a_ts(ts0, ts1, can_modify=None, cannot_modify=None)

For each tensor's pair, replace the end of t0 by the end of t1.

B0 B1 B0 B1 | | => \| A0 A1 A0 A1

The end of the tensors in ts0 are left dangling.

##### Args:
• ts0: an object convertible to a list of tf.Tensor.
• ts1: an object convertible to a list of tf.Tensor.
• can_modify: iterable of operations which can be modified. Any operation outside within_ops will be left untouched by this function.
• cannot_modify: iterable of operations which cannot be modified. Any operation within cannot_modify will be left untouched by this function.
##### Returns:

The number of individual modifications made by the function.

##### Raises:
• TypeError: if ts0 or ts1 cannot be converted to a list of tf.Tensor.
• TypeError: if can_modify or cannot_modify is not None and cannot be converted to a list of tf.Operation.

### tf.contrib.graph_editor.swap_inputs(sgv0, sgv1)

Swap all the inputs of sgv0 and sgv1 (see reroute_inputs).

### tf.contrib.graph_editor.reroute_a2b_inputs(sgv0, sgv1)

Re-route all the inputs of sgv0 to sgv1 (see reroute_inputs).

### tf.contrib.graph_editor.reroute_b2a_inputs(sgv0, sgv1)

Re-route all the inputs of sgv1 to sgv0 (see reroute_inputs).

### tf.contrib.graph_editor.swap_outputs(sgv0, sgv1)

Swap all the outputs of sgv0 and sgv1 (see _reroute_outputs).

### tf.contrib.graph_editor.reroute_a2b_outputs(sgv0, sgv1)

Re-route all the outputs of sgv0 to sgv1 (see _reroute_outputs).

### tf.contrib.graph_editor.reroute_b2a_outputs(sgv0, sgv1)

Re-route all the outputs of sgv1 to sgv0 (see _reroute_outputs).

### tf.contrib.graph_editor.swap(sgv0, sgv1)

Swap the inputs and outputs of sgv1 to sgv0 (see _reroute).

### tf.contrib.graph_editor.reroute_a2b(sgv0, sgv1)

Re-route the inputs and outputs of sgv0 to sgv1 (see _reroute).

### tf.contrib.graph_editor.reroute_b2a(sgv0, sgv1)

Re-route the inputs and outputs of sgv1 to sgv0 (see _reroute).

### tf.contrib.graph_editor.remove_control_inputs(op, cops)

Remove the control inputs cops from co.

##### Args:
• op: a tf.Operation from which to remove the control inputs.
• cops: an object convertible to a list of tf.Operation.
##### Raises:
• TypeError: if op is not a tf.Operation
• ValueError: if any cop in cops is not a control input of op.

### tf.contrib.graph_editor.add_control_inputs(op, cops)

Add the control inputs cops to co.

##### Args:
• op: a tf.Operation to which the control inputs are added.
• cops: an object convertible to a list of tf.Operation.
##### Raises:
• TypeError: if op is not a tf.Operation
• ValueError: if any cop in cops is already a control input of op.