---
title: Publishers.MakeConnectable
framework: combine
role: symbol
role_heading: Structure
path: combine/publishers/makeconnectable
---

# Publishers.MakeConnectable

A publisher that provides explicit connectability to another publisher.

## Declaration

```swift
struct MakeConnectable<Upstream> where Upstream : Publisher
```

## Mentioned in

Controlling Publishing with Connectable Publishers

## Overview

Overview Publishers.MakeConnectable is a ConnectablePublisher, which allows you to perform configuration before publishing any elements. Call connect() on this publisher when you want to attach to its upstream publisher and start producing elements. Use the makeConnectable() operator to wrap an upstream publisher with an instance of this publisher.

## Topics

### Creating a connectable publisher

- [init(upstream:)](combine/publishers/makeconnectable/init(upstream:).md)

### Declaring supporting types

- [Publishers.MakeConnectable.Output](combine/publishers/makeconnectable/output.md)
- [Publishers.MakeConnectable.Failure](combine/publishers/makeconnectable/failure.md)

## Relationships

### Conforms To

- [ConnectablePublisher](combine/connectablepublisher.md)
- [Publisher](combine/publisher.md)

## See Also

### Using explicit publisher connections

- [Publishers.Autoconnect](combine/publishers/autoconnect.md)
