<!--
{
  "availability" : [
    "iOS: 16.0.0 -",
    "iPadOS: 16.0.0 -",
    "macCatalyst: 16.0.0 -",
    "macOS: 12.0.0 -",
    "visionOS: 1.0.0 -"
  ],
  "documentType" : "symbol",
  "framework" : "SwiftUI",
  "identifier" : "/documentation/SwiftUI/TableRowBuilder",
  "metadataVersion" : "0.1.0",
  "role" : "Structure",
  "symbol" : {
    "kind" : "Structure",
    "modules" : [
      "SwiftUI"
    ],
    "preciseIdentifier" : "s:7SwiftUI15TableRowBuilderV"
  },
  "title" : "TableRowBuilder"
}
-->

# TableRowBuilder

A result builder that creates table row content from closures.

```
@resultBuilder struct TableRowBuilder<Value> where Value : Identifiable
```

## Overview

The `buildBlock` methods in this type create [`TableRowContent`](/documentation/SwiftUI/TableRowContent)
instances based on the number and types of sources provided as parameters.

Don’t use this type directly; instead, SwiftUI annotates the `rows`
parameter of the various [`Table`](/documentation/SwiftUI/Table) initializers with the
`@TableRowBuilder` annotation, implicitly calling this builder for you.

## Topics

### Building a row from sources

[`static func buildBlock<C>(C) -> C`](/documentation/SwiftUI/TableRowBuilder/buildBlock(_:))

Creates a single row result.

[`static func buildBlock<C0, C1>(C0, C1) -> TupleTableRowContent<Value, (C0, C1)>`](/documentation/SwiftUI/TableRowBuilder/buildBlock(_:_:))

Creates a row result from two sources.

[`static func buildBlock<C0, C1, C2>(C0, C1, C2) -> TupleTableRowContent<Value, (C0, C1, C2)>`](/documentation/SwiftUI/TableRowBuilder/buildBlock(_:_:_:))

Creates a row result from three sources.

[`static func buildBlock<C0, C1, C2, C3>(C0, C1, C2, C3) -> TupleTableRowContent<Value, (C0, C1, C2, C3)>`](/documentation/SwiftUI/TableRowBuilder/buildBlock(_:_:_:_:))

Creates a row result from four sources.

[`static func buildBlock<C0, C1, C2, C3, C4>(C0, C1, C2, C3, C4) -> TupleTableRowContent<Value, (C0, C1, C2, C3, C4)>`](/documentation/SwiftUI/TableRowBuilder/buildBlock(_:_:_:_:_:))

Creates a row result from five sources.

[`static func buildBlock<C0, C1, C2, C3, C4, C5>(C0, C1, C2, C3, C4, C5) -> TupleTableRowContent<Value, (C0, C1, C2, C3, C4, C5)>`](/documentation/SwiftUI/TableRowBuilder/buildBlock(_:_:_:_:_:_:))

Creates a row result from six sources.

[`static func buildBlock<C0, C1, C2, C3, C4, C5, C6>(C0, C1, C2, C3, C4, C5, C6) -> TupleTableRowContent<Value, (C0, C1, C2, C3, C4, C5, C6)>`](/documentation/SwiftUI/TableRowBuilder/buildBlock(_:_:_:_:_:_:_:))

Creates a row result from seven sources.

[`static func buildBlock<C0, C1, C2, C3, C4, C5, C6, C7>(C0, C1, C2, C3, C4, C5, C6, C7) -> TupleTableRowContent<Value, (C0, C1, C2, C3, C4, C5, C6, C7)>`](/documentation/SwiftUI/TableRowBuilder/buildBlock(_:_:_:_:_:_:_:_:))

Creates a row result from eight sources.

[`static func buildBlock<C0, C1, C2, C3, C4, C5, C6, C7, C8>(C0, C1, C2, C3, C4, C5, C6, C7, C8) -> TupleTableRowContent<Value, (C0, C1, C2, C3, C4, C5, C6, C7, C8)>`](/documentation/SwiftUI/TableRowBuilder/buildBlock(_:_:_:_:_:_:_:_:_:))

Creates a row result from nine sources.

[`static func buildBlock<C0, C1, C2, C3, C4, C5, C6, C7, C8, C9>(C0, C1, C2, C3, C4, C5, C6, C7, C8, C9) -> TupleTableRowContent<Value, (C0, C1, C2, C3, C4, C5, C6, C7, C8, C9)>`](/documentation/SwiftUI/TableRowBuilder/buildBlock(_:_:_:_:_:_:_:_:_:_:))

Creates a row result from ten sources.

### Building a row from conditionals

[`static func buildIf<C>(C?) -> C?`](/documentation/SwiftUI/TableRowBuilder/buildIf(_:))

Creates a row result for conditional statements.

[`static func buildEither<T, F>(first: T) -> _ConditionalContent<T, F>`](/documentation/SwiftUI/TableRowBuilder/buildEither(first:))

Creates a row result for the first of two row content alternatives.

[`static func buildEither<T, F>(second: F) -> _ConditionalContent<T, F>`](/documentation/SwiftUI/TableRowBuilder/buildEither(second:))

Creates a row result for the second of two row content alternatives.

[`static func buildExpression<Content>(Content) -> Content`](/documentation/SwiftUI/TableRowBuilder/buildExpression(_:))

Builds an expression within the builder.



---

Copyright &copy; 2026 Apple Inc. All rights reserved. | [Terms of Use](https://www.apple.com/legal/internet-services/terms/site.html) | [Privacy Policy](https://www.apple.com/privacy/privacy-policy)