01-Variables and operations.md
02-Loops and if.md
03-Functions and scopes.md
04-Structs.md
05-Imports and namespaces.md
06-Enums and switch.md
07-Debugging.md
08-Macros and preprocessor.md
10-Annotations.md
11-Operator overloading.md
15-Polymorphism.md
16-Maps and arrays.md
17-Constructors and destructors.md
18-Platforms.md
19-Testing.md
20-Type information.md
21-Inline assembly.md
22-External libraries.md
23-Style conventions.md
24-Exceptions.md
25-Bytecode and VM.md
26-Targeting ARM.md
27-Compile time execution.md
28-Compiler functions.md
100-Standard libraries.md
101-OpenSSL.md
102-Logger.md
README.md

10-Annotations.md

Annotations

The purpose of annotations is to tell the compiler extra details about structures, statements, or functions. All annotations follow the same syntax: @name or @name(extra content).

Annotations usually appear between keyword like struct or fn and an identifier as shown below:

struct @no_padding MyData { ... } fn @stdcall MyFunction() { ... }

See other chapters such as Structs and Enums for specific annotations.

Future / incomplete features

User defined annotations?