<!--
{
  "availability" : [
    "iOS: 26.0.0 -",
    "iPadOS: 26.0.0 -",
    "macCatalyst: 26.0.0 -",
    "macOS: 26.0.0 -",
    "tvOS: 26.0.0 -",
    "visionOS: 26.0.0 -"
  ],
  "documentType" : "symbol",
  "framework" : "Metal",
  "identifier" : "/documentation/Metal/MTL4ComputeCommandEncoder/setArgumentTable(_:)",
  "metadataVersion" : "0.1.0",
  "role" : "Instance Method",
  "symbol" : {
    "kind" : "Instance Method",
    "modules" : [
      "Metal"
    ],
    "preciseIdentifier" : "c:objc(pl)MTL4ComputeCommandEncoder(im)setArgumentTable:"
  },
  "title" : "setArgumentTable(_:)"
}
-->

# setArgumentTable(_:)

Sets an argument table for the compute shader stage of this pipeline.

```
func setArgumentTable(_ argumentTable: (any MTL4ArgumentTable)?)
```

## Parameters

`argumentTable`

A [`MTL4ArgumentTable`](/documentation/Metal/MTL4ArgumentTable) to set on the command encoder.

## Discussion

Metal takes a snapshot of the resources in the argument table when you make dispatch or execute calls on
this encoder instance. Metal makes the snapshot contents available to the compute shader function of the
current pipeline state.

---

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)