/// <summary>
 /// Appends a comma-separated list of safe literals, e.g. <c>1, 2, 3</c>, to a new attribute buffer. Parameters are used for unsafe literals.
 /// </summary>
 /// <param name="projection">The current projection.</param>
 /// <returns>A new attribute containing the appended buffer.</returns>
 public static IProjectionAttribute LitList(this IProjection projection) => projection.ValList(a => a.Lit());
 /// <summary>
 /// Appends a comma-separated list of parameter names and values, e.g. <c>@P0, @P1, @P2</c>, to a new attribute buffer.
 /// </summary>
 /// <param name="projection">The current projection.</param>
 /// <returns>A new attribute containing the appended buffer.</returns>
 public static IProjectionAttribute ParList(this IProjection projection) => projection.ValList(a => a.Par());