---
title: Publishers.LastWhere
framework: combine
role: symbol
role_heading: Structure
path: combine/publishers/lastwhere
---

# Publishers.LastWhere

A publisher that waits until after the stream finishes and then publishes the last element of the stream that satisfies a predicate closure.

## Declaration

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

## Topics

### Creating a last-where Publisher

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

### Declaring supporting types

- [Publishers.LastWhere.Output](combine/publishers/lastwhere/output.md)
- [Publishers.LastWhere.Failure](combine/publishers/lastwhere/failure.md)

### Inspecting publisher properties

- [upstream](combine/publishers/lastwhere/upstream.md)
- [predicate](combine/publishers/lastwhere/predicate.md)

## Relationships

### Conforms To

- [Publisher](combine/publisher.md)

## See Also

### Selecting specific elements

- [Publishers.First](combine/publishers/first.md)
- [Publishers.FirstWhere](combine/publishers/firstwhere.md)
- [Publishers.TryFirstWhere](combine/publishers/tryfirstwhere.md)
- [Publishers.Last](combine/publishers/last.md)
- [Publishers.TryLastWhere](combine/publishers/trylastwhere.md)
- [Publishers.Output](combine/publishers/output.md)
