> Aztec.nr API reference, v6.0.0 (mainnet and testnet). Index: https://docs.aztec.network/aztec-nr-api/v6.0.0/llms.txt

# Module functions

Module: `noir_aztec::macros::functions`

## Modules

- [initialization_utils](/aztec-nr-api/v6.0.0/noir_aztec/macros/functions/initialization_utils/index.md)

## Functions

- [allow_phase_change](/aztec-nr-api/v6.0.0/noir_aztec/macros/functions/fn.allow_phase_change.md): An `allow_phase_change` function will allow transitioning from the non-revertible to the revertible phase during its execution.
- [authorize_once](/aztec-nr-api/v6.0.0/noir_aztec/macros/functions/fn.authorize_once.md): Restricts access to an [`external`](/aztec-nr-api/v6.0.0/noir_aztec/macros/functions/fn.external.md) private or public function so that it can only be called by an authorized account.
- [external](/aztec-nr-api/v6.0.0/noir_aztec/macros/functions/fn.external.md): An external function is callable from outside the contract.
- [initializer](/aztec-nr-api/v6.0.0/noir_aztec/macros/functions/fn.initializer.md): An initializer function is where a contract initializes its state.
- [internal](/aztec-nr-api/v6.0.0/noir_aztec/macros/functions/fn.internal.md): An internal function is only callable from inside the contract.
- [noinitcheck](/aztec-nr-api/v6.0.0/noir_aztec/macros/functions/fn.noinitcheck.md): A no-init-check [`external`](/aztec-nr-api/v6.0.0/noir_aztec/macros/functions/fn.external.md) function can be called even if none of the [`initializer`](/aztec-nr-api/v6.0.0/noir_aztec/macros/functions/fn.initializer.md) functions have been called yet.
- [only_self](/aztec-nr-api/v6.0.0/noir_aztec/macros/functions/fn.only_self.md): Restricts an [`external`](/aztec-nr-api/v6.0.0/noir_aztec/macros/functions/fn.external.md) function so that it can only be called by the contract itself.
- [view](/aztec-nr-api/v6.0.0/noir_aztec/macros/functions/fn.view.md): View functions cannot modify state in any way, including performing contract calls that would in turn modify state.
