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 a local clone.

dmd.traits

Compiler implementation of the D programming language.
Authors:

Source traits.d

struct PushAttributes;
TraitsExp
d_uns64 getTypePointerBitmap(Loc loc, Type t, Array!d_uns64* data);
get an array of size_t values that indicate possible pointer words in memory if interpreted as the type given as argument
Returns:
the size of the type in bytes, d_uns64.max on error
Expression pointerBitmap(TraitsExp e);
get an array of size_t values that indicate possible pointer words in memory if interpreted as the type given as argument the first array element is the size of the type for independent interpretation of the array following elements bits represent one word (4/8 bytes depending on the target architecture). If set the corresponding memory might contain a pointer/reference.
Returns:
[T.sizeof, pointerbit0-31/63, pointerbit32/64-63/128, ...]