public static ICastingRequest With(this ICastingRequest request, Func <Value> func) { if (request.Width == 0) { request.TryRunWith(func); } return(request); }
public static ICastingRequest With <T0, T1>(this ICastingRequest request, Func <T0, T1, Value> func, bool explicitCast = false) where T0 : Value where T1 : Value { if (request.Width == 2) { request.TryRunWith(func, explicitCast); } return(request); }
public static ICastingRequest With <T0, T1, T2, T3, T4, T5>(this ICastingRequest request, Func <T0, T1, T2, T3, T4, T5, Value> func, bool explicitCast = false) where T0 : Value where T1 : Value where T2 : Value where T3 : Value where T4 : Value where T5 : Value { if (request.Width == 6) { request.TryRunWith(func, explicitCast); } return(request); }
public static ICastingRequest With <T>(this ICastingRequest request, Func <T[], Value> func, bool explicitCast = false) where T : Value { request.TryRunWith(func); return(request); }