[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                                                                                                               |
| ------------------------------------------------------------------------------------ | ------------------------------------------------------------------------------------------------------------------------- |
| [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.                                                                                              |
| [lazy](https://evolu.dev/docs/api-reference/common/Function/functions/lazy)                       | Creates a [Lazy](https://evolu.dev/docs/api-reference/common/Function/type-aliases/Lazy) from a precomputed value.                     |
| [todo](https://evolu.dev/docs/api-reference/common/Function/functions/todo)                       | Development placeholder that always throws.                                                                               |

## Type Aliases

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

## Variables

| Variable                                                                         | Description                                                                                                      |
| -------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------- |
| [lazyFalse](https://evolu.dev/docs/api-reference/common/Function/variables/lazyFalse)         | A [Lazy](https://evolu.dev/docs/api-reference/common/Function/type-aliases/Lazy) that returns `false`.                        |
| [lazyNull](https://evolu.dev/docs/api-reference/common/Function/variables/lazyNull)           | A [Lazy](https://evolu.dev/docs/api-reference/common/Function/type-aliases/Lazy) that returns `null`.                         |
| [lazyTrue](https://evolu.dev/docs/api-reference/common/Function/variables/lazyTrue)           | A [Lazy](https://evolu.dev/docs/api-reference/common/Function/type-aliases/Lazy) that returns `true`.                         |
| [lazyUndefined](https://evolu.dev/docs/api-reference/common/Function/variables/lazyUndefined) | A [Lazy](https://evolu.dev/docs/api-reference/common/Function/type-aliases/Lazy) that returns `undefined`.                    |
| [lazyVoid](https://evolu.dev/docs/api-reference/common/Function/variables/lazyVoid)           | A [Lazy](https://evolu.dev/docs/api-reference/common/Function/type-aliases/Lazy) that returns `undefined` for void callbacks. |