title: Asynchronous iterator Task<IEnumerable<T>>
body: <p>I’m trying to implement an asynchronous function that returns an iterator. The idea is the following:</p>
  
  <pre><code>    private async Task&lt;IEnumerable&lt;char&gt;&gt; TestAsync(string testString)
      {
          foreach (char c in testString.ToCharArray())
          {
              // do other work
              yield return c;
          }
      }
  </code></pre>
  
  <p>However, there is an error message that the function cannot be an iterator block because <code>Task&lt;IEnumerable&lt;char&gt;&gt;</code> is not an iterator interface type. Is there a solution?</p>