---
title: MTL4CompilerDescriptor
framework: metal
role: symbol
role_heading: Class
path: metal/mtl4compilerdescriptor
---

# MTL4CompilerDescriptor

Groups together properties for creating a compiler context.

## Declaration

```swift
class MTL4CompilerDescriptor
```

## Topics

### Instance Properties

- [label](metal/mtl4compilerdescriptor/label.md)
- [pipelineDataSetSerializer](metal/mtl4compilerdescriptor/pipelinedatasetserializer.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

### Shader compilation

- [Metal libraries](metal/metal-libraries.md)
- [Metal dynamic libraries](metal/metal-dynamic-libraries.md)
- [Metal binary archives](metal/metal-binary-archives.md)
- [MTL4Compiler](metal/mtl4compiler.md)
- [MTL4CompilerTaskOptions](metal/mtl4compilertaskoptions.md)
- [MTL4CompilerTaskStatus](metal/mtl4compilertaskstatus.md)
- [MTL4Archive](metal/mtl4archive.md)
- [MTL4BinaryFunction](metal/mtl4binaryfunction.md)
- [MTL4BinaryFunctionDescriptor](metal/mtl4binaryfunctiondescriptor.md)
- [MTL4BinaryFunctionOptions](metal/mtl4binaryfunctionoptions.md)
- [MTL4PipelineStageDynamicLinkingDescriptor](metal/mtl4pipelinestagedynamiclinkingdescriptor.md)
