[API reference](https://evolu.dev/docs/api-reference) › [@evolu/common](https://evolu.dev/docs/api-reference/common) › Function

Function utilities including exhaustive checks and composition.

## Functions

| Function                                                                             | Description                                                                                                               |
| ------------------------------------------------------------------------------------ | ------------------------------------------------------------------------------------------------------------------------- |
| [constant](https://evolu.dev/docs/api-reference/common/Function/functions/constant)               | Creates a [Thunk](https://evolu.dev/docs/api-reference/common/Function/type-aliases/Thunk) that always returns a precomputed value.    |
| [disposable](https://evolu.dev/docs/api-reference/common/Function/functions/disposable)           | Creates an object that follows JavaScript disposal semantics.                                                             |
| [exhaustiveCheck](https://evolu.dev/docs/api-reference/common/Function/functions/exhaustiveCheck) | Helper function to ensure exhaustive matching in a switch statement. Throws an error if an unhandled case is encountered. |
| [identity](https://evolu.dev/docs/api-reference/common/Function/functions/identity)               | Returns the value unchanged.                                                                                              |
| [isDisposable](https://evolu.dev/docs/api-reference/common/Function/functions/isDisposable)       | -                                                                                                                         |
| [todo](https://evolu.dev/docs/api-reference/common/Function/functions/todo)                       | Development placeholder that always throws.                                                                               |

## Type Aliases

| Type Alias                                                          | Description                                             |
| ------------------------------------------------------------------- | ------------------------------------------------------- |
| [Thunk](https://evolu.dev/docs/api-reference/common/Function/type-aliases/Thunk) | A function that takes no arguments and returns a value. |

## Variables

| Variable                                                                           | Description                                                                                                        |
| ---------------------------------------------------------------------------------- | ------------------------------------------------------------------------------------------------------------------ |
| [constFalse](https://evolu.dev/docs/api-reference/common/Function/variables/constFalse)         | A [Thunk](https://evolu.dev/docs/api-reference/common/Function/type-aliases/Thunk) that returns `false`.                        |
| [constNull](https://evolu.dev/docs/api-reference/common/Function/variables/constNull)           | A [Thunk](https://evolu.dev/docs/api-reference/common/Function/type-aliases/Thunk) that returns `null`.                         |
| [constTrue](https://evolu.dev/docs/api-reference/common/Function/variables/constTrue)           | A [Thunk](https://evolu.dev/docs/api-reference/common/Function/type-aliases/Thunk) that returns `true`.                         |
| [constUndefined](https://evolu.dev/docs/api-reference/common/Function/variables/constUndefined) | A [Thunk](https://evolu.dev/docs/api-reference/common/Function/type-aliases/Thunk) that returns `undefined`.                    |
| [constVoid](https://evolu.dev/docs/api-reference/common/Function/variables/constVoid)           | A [Thunk](https://evolu.dev/docs/api-reference/common/Function/type-aliases/Thunk) that returns `undefined` for void callbacks. |