Mojo decorators
A Mojo decorator is a higher-order
function that modifies or
extends the behavior of a struct, a function, or some other code. Instead of
actually calling the higher-order function, you simply add the decorator (such
as the @value
decorator) above your code (such as a struct). The Mojo
compiler then uses the decorator function to modify your code at compile time.
The following pages describe each built-in decorator with examples.
Copies the body of a function directly into the body of the calling function. Declares that a type should exist only in the parameter domain. Executes a function or if statement at compile time. Declares that a type should be passed in machine registers. Declares a struct method as static. Unrolls a loop at compile time. Generates boilerplate lifecycle methods for a struct.@always_inline
@nonmaterializable
@parameter
@register_passable
@staticmethod
@unroll
@value