Unity’s default coroutines have several cases where you can yield return some variable. For instance, you can “yield return asyncOperation;”. MEC has a function to do that, and that function is called WaitUntilDone.

yield return Timing.WaitUntilDone(wwwObject);
yield return Timing.WaitUntilDone(asyncOperation);
yield return Timing.WaitUntilDone(customYieldInstruction);

// With MEC Pro you can do a little more with WaitUntilDone:

yield return Timing.WaitUntilDone(newCoroutine);
 // The above automatically starts a new coroutine and holds the current one.

yield return Timing.WaitUntilTrue(functionDelegateThatReturnsBool);
yield return Timing.WaitUntilFalse(functionDelegateThatReturnsBool);