Unrolls (tagged) cirq.CircuitOperations by inserting operations inline at qubit frontier.

Each matching cirq.CircuitOperation is replaced by inserting underlying operations using the circuit.insert_at_frontier method. The greedy approach attempts to reuse any available space in existing moments on the right of circuit_op before inserting new moments.

circuit Input circuit to apply the transformations on. The input circuit is not mutated.
deep If true, the transformer primitive will be recursively applied to all circuits wrapped inside circuit operations.
tags_to_check If specified, only circuit operations tagged with one of the tags_to_check are unrolled.

Copy of input circuit with (Tagged) CircuitOperation's expanded inline at qubit frontier.