Function

Create a Function meta-object from function Fun,

  1. template Function(Props...)
  2. 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))))
  3. alias Function(alias Fun, string Aggregate, string Member, int Index) = Function!(Fun, `__traits(getOverloads, %s, "%s")[%d]`.format(Aggregate, Member, Index), Index)
    alias Function(alias Fun, string Aggregate, string Member, int Index) = Function!(Fun, `__traits(getOverloads, %s, "%s")[%d]`.format(Aggregate, Member, Index), Index)

Meta