Contents

SectionedResults

A RandomAccessCollection of Resultssection instances representing sectioned query results.

Declaration

struct SectionedResults<Element, SectionTitle> where Element : PersistentModel, SectionTitle : Hashable

Overview

SectionedResults is the result type for sectioned @Query properties. Iterating it yields sections; each section is itself a RandomAccessCollection of model elements. Use subscript(sectionTitle:) for O(1) lookup by section title.

@Query(sort: \.name, sectionBy: \.category)
var items: SectionedResults<Item, String>

ForEach(items) { section in              // section: ResultsSection<Item, String>
    Section(section.title) {             // "Work", "Personal", …
        ForEach(section) { item in … }   // item: Item
    }
}

// O(1) named lookup
let workCount = items[sectionTitle: "Work"]?.count ?? 0

Topics

Instance Properties

Instance Methods

Subscripts

Default Implementations