alias Function(alias Fun, string Source = __traits(identifier, Fun), int Index = 0) =
Function!(
Fun,
functionAttributes!
Fun |
(__traits(isStaticFunction, Fun) ? ExtendedFunctionAttribute.static_ : 0),
Type!(
ReturnType!
Fun, "std.traits.ReturnType!(%s)".
format(
Source)), __traits(
identifier,
Fun),
Index,
reflectParameterList!(
Fun,
Source),
UDAList!(
makeUDAs!(
Source, 0, __traits(
getAttributes,
Fun))))