---
title: MTLStitchedLibraryDescriptor
framework: metal
role: symbol
role_heading: Class
path: metal/mtlstitchedlibrarydescriptor
---

# MTLStitchedLibraryDescriptor

A description of a new library of procedurally generated functions.

## Declaration

```swift
class MTLStitchedLibraryDescriptor
```

## Overview

Overview An MTLStitchedLibraryDescriptor describes a library of new stitched functions. A stitched function is a visible function you create by composing other Metal shader functions together in a function graph. Configure a stitched library descriptor by assigning an array of one or more MTLFunctionStitchingGraph instances, each describing a stitched function, to the functionGraphs property. Then assign an MTLFunction array that includes all the functions the graphs depend on to the functions property. Create a stitched library from the descriptor by passing it to the makeLibrary(stitchedDescriptor:) method of an MTLDevice. You can change the descriptor to create other libraries without affecting any existing ones.

## Topics

### Configuring a stitched library

- [functions](metal/mtlstitchedlibrarydescriptor/functions.md)
- [functionGraphs](metal/mtlstitchedlibrarydescriptor/functiongraphs.md)

### Instance Properties

- [binaryArchives](metal/mtlstitchedlibrarydescriptor/binaryarchives.md)
- [options](metal/mtlstitchedlibrarydescriptor/options.md)

## Relationships

### Inherits From

- [NSObject](objectivec/nsobject-swift.class.md)

### Conforms To

- [CVarArg](swift/cvararg.md)
- [CustomDebugStringConvertible](swift/customdebugstringconvertible.md)
- [CustomStringConvertible](swift/customstringconvertible.md)
- [Equatable](swift/equatable.md)
- [Hashable](swift/hashable.md)
- [NSCopying](foundation/nscopying.md)
- [NSObjectProtocol](objectivec/nsobjectprotocol.md)

## See Also

### Stitched function libraries

- [Customizing shaders using function pointers and stitching](metal/customizing-shaders-using-function-pointers-and-stitching.md)
- [MTLFunctionStitchingGraph](metal/mtlfunctionstitchinggraph.md)
- [MTLFunctionStitchingInputNode](metal/mtlfunctionstitchinginputnode.md)
- [MTLFunctionStitchingFunctionNode](metal/mtlfunctionstitchingfunctionnode.md)
- [MTLFunctionStitchingNode](metal/mtlfunctionstitchingnode.md)
- [MTLFunctionStitchingAttributeAlwaysInline](metal/mtlfunctionstitchingattributealwaysinline.md)
- [MTLFunctionStitchingAttribute](metal/mtlfunctionstitchingattribute.md)
