View source code Display the source code in std/traits.d from which this page was generated on github. 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. Page wiki View or edit the community-maintained wiki page associated with this page.

Enum std.traits.member functionLinkage

Returns the calling convention of function as a string.

Declaration

enum functionLinkage(func...) = ['F':"D", 'U':"C", 'W':"Windows", 'V':"Pascal", 'R':"C++"][mangledName!Func[0]];

Example

extern(D) void Dfunc() {}
extern(C) void Cfunc() {}
static assert(functionLinkage!Dfunc == "D");
static assert(functionLinkage!Cfunc == "C");

string a = functionLinkage!Dfunc;
assert(a == "D");

auto fp = &Cfunc;
string b = functionLinkage!fp;
assert(b == "C");

Authors

Walter Bright, Tomasz Stachowiak (isExpressions), Andrei Alexandrescu, Shin Fujishiro, Robert Clipsham, David Nadlinger, Kenji Hara, Shoichi Kato

License

Boost License 1.0.

Comments