2023-09-12 08:17:52 +02:00

1.8 KiB

ENUM

ArrayBuilder

The ArrayBuilder is a simple result builder that outputs an array of any type.

You can define any array using Swift's DSL:

@ArrayBuilder<String> var string: [String] {
    "Hello, "
    if bool {
        "world!"
    } else {
        "colibri!"
    }
    for x in 0...10 {
        "\nIteration Number \(x)"
    }
}

Methods

buildBlock(_:)

Build combined results from statement blocks.

  • Parameter components: The components.
  • Returns: The components in a component.

buildExpression(_:)

Translate an element into an ArrayBuilder.Component.

  • Parameter element: The element to translate.
  • Returns: A component created from the element.

buildExpression(_:)

Translate an array of elements into an ArrayBuilder.Component.

  • Parameter elements: The elements to translate.
  • Returns: A component created from the element.

buildExpression(_:)

Fetch a component.

  • Parameter component: A component.
  • Returns: The component.

buildOptional(_:)

Enables support for if statements without an else.

  • Parameter component: An optional component.
  • Returns: A nonoptional component.

buildEither(first:)

Enables support for if-else and switch statements.

  • Parameter component: A component.
  • Returns: The component.

buildEither(second:)

Enables support for if-else and switch statements.

  • Parameter component: A component.
  • Returns: The component.

buildArray(_:)

Enables support for for..in loops.

  • Parameter components: The components as a two dimensional array.
  • Returns: The components as a one dimensional array.

buildFinalResult(_:)

Convert a component to an array of elements.

  • Parameter component: The component to convert.
  • Returns: The generated array of elements.