/// <summary> /// Adds the given values. /// </summary> /// <typeparam name="TLeft">The type of the left hand side.</typeparam> /// <typeparam name="TRight">The type of the right hand side.</typeparam> /// <typeparam name="TResult">The result type.</typeparam> /// <param name="left">The left hand side parameter.</param> /// <param name="right">The right hand side parameter.</param> /// <returns>The added result.</returns> internal static TResult Add <TLeft, TRight, TResult>(TLeft left, TRight right) => AddImplementation <TLeft, TRight, TResult> .Invoke(left, right);
/// <summary> /// Adds the given values. /// </summary> /// <typeparam name="T">The type of the operation (left hand side, right hand side, and result).</typeparam> /// <param name="left">The left hand side parameter.</param> /// <param name="right">The right hand side parameter.</param> /// <returns>The added result.</returns> internal static T Add <T>(T left, T right) => AddImplementation <T, T, T> .Invoke(left, right);