---
title: AsyncPublisher
framework: combine
role: symbol
role_heading: Structure
path: combine/asyncpublisher
---

# AsyncPublisher

A publisher that exposes its elements as an asynchronous sequence.

## Declaration

```swift
struct AsyncPublisher<P> where P : Publisher, P.Failure == Never
```

## Overview

Overview AsyncPublisher conforms to AsyncSequence, which allows callers to receive values with the for-await-in syntax, rather than attaching a Subscriber. Use the values property of the Publisher protocol to wrap an existing publisher with an instance of this type.

## Topics

### Creating an asynchronous publisher

- [init(_:)](combine/asyncpublisher/init(_:).md)

### Creating an iterator

- [makeAsyncIterator()](combine/asyncpublisher/makeasynciterator().md)
- [AsyncPublisher.Iterator](combine/asyncpublisher/iterator.md)

### Supporting types

- [AsyncPublisher.Element](combine/asyncpublisher/element.md)

## Relationships

### Conforms To

- [AsyncSequence](swift/asyncsequence.md)

## See Also

### Asynchronous Publishers

- [AsyncThrowingPublisher](combine/asyncthrowingpublisher.md)
