---
title: "makeBinaryFunction(descriptor:compilerTaskOptions:)"
framework: metal
role: symbol
role_heading: Instance Method
path: "metal/mtl4compiler/makebinaryfunction(descriptor:compilertaskoptions:)-5o46e"
---

# makeBinaryFunction(descriptor:compilerTaskOptions:)

Creates a new binary visible or intersection function synchronously.

## Declaration

```swift
func makeBinaryFunction(descriptor: MTL4BinaryFunctionDescriptor, compilerTaskOptions: MTL4CompilerTaskOptions? = nil) throws -> any MTL4BinaryFunction
```

## Parameters

- `descriptor`: A binary function descriptor to use for creating the binary function.
- `compilerTaskOptions`: A descriptor of the compilation itself, providing parameters that influence execution of the compilation process.

## Return Value

Return Value A binary function upon success, otherwise this function throws.
