SectionedResults
A RandomAccessCollection of Resultssection instances representing sectioned query results.
Declaration
struct SectionedResults<Element, SectionTitle> where Element : PersistentModel, SectionTitle : HashableOverview
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