View source code
Display the source code in dmd/attrib.d from which this page was generated on github.
Report a bug
If you spot a problem with this page, click here to create a Bugzilla issue.
Improve this page
Quickly fork, edit online, and submit a pull request for this page. Requires a signed-in GitHub account. This works well for small changes. If you'd like to make larger changes you may want to consider using local clone.

Module dmd.attrib

Defines declarations of various attributes.

The term 'attribute' refers to things that can apply to a larger scope than a single declaration. Among them are: - Alignment (align(8)) - User defined attributes (@UDA) - Function Attributes (@safe) - Storage classes (static, __gshared) - Mixin declarations (mixin("int x;")) - Conditional compilation (static if, static foreach) - Linkage (extern(C)) - Anonymous structs / unions - Protection (private, public) - Deprecated declarations (@deprecated)

Documentation

https://dlang.org/phobos/dmd_attrib.html

Coverage

https://codecov.io/gh/dlang/dmd/src/master/src/dmd/attrib.d

Classes

NameDescription
AlignDeclaration
AnonDeclaration
AttribDeclaration
CompileDeclaration Mixin declarations, like: mixin("int x");
ConditionalDeclaration
CPPMangleDeclaration
CPPNamespaceDeclaration A node to represent an extern(C++) namespace attribute
DeprecatedDeclaration
ForwardingAttribDeclaration Collection of declarations that stores foreach index variables in a local symbol table. Other symbols declared within are forwarded to another scope, like:
LinkDeclaration
PragmaDeclaration
ProtDeclaration
StaticForeachDeclaration Static foreach at declaration scope, like: static foreach (i; [0, 1, 2]){ }
StaticIfDeclaration
StorageClassDeclaration
UserAttributeDeclaration User defined attributes look like: @foo(args, ...) @(args, ...)

Authors

Walter Bright

License

Boost License 1.0