Allow
Suppresses a specific lint on the annotated declaration. The linter's style checks apply everywhere by default; #Allow opts one declaration out when it has a deliberate reason to break a rule.
Syntax
#Allow("naming.type")
struct iovec { // deliberately lower-case to mirror the C struct
base: *opaque,
length: uint,
}
The argument is the lint rule to silence. It applies only to the declaration it precedes; every other declaration is still checked.
Available Rules
| Rule | Checks |
|---|---|
naming.type | Types use PascalCase (see Identifiers) |
Suppressing a rule is most defensible when a name must match an external contract — a C struct, an OS type, a wire format — where following Rux conventions would obscure the correspondence.
See Also
- Identifiers — the naming conventions the linter enforces
- Attributes — the full attribute set
NoReturn
Declares that a function never returns to its caller — it ends the program, loops forever, or transfers control elsewhere. The compiler uses this to check control flow: code after a call to a #NoReturn function is known to be unreachable, and a branch that ends in one satisfies a function that must produce a value.
Primitive Types
A consolidated summary of every built-in primitive type in Rux, grouped by family. These names are predefined identifiers — some are compiler-provided aliases — not keywords; they live in the type namespace. Each entry links to its full page.