On 6/14/2016 8:23 PM, tsbockman wrote:
On Wednesday, 15 June 2016 at 00:16:12 UTC, Walter Bright wrote:
A complete list of what types are acceptable for 'N' would be desirous, too.

This is specified fully in the template constraints:
    if (isIntegral!N && isUnqual!N)
    if ((isIntegral!N && !isUnqual!N) || isCheckedint!N)

The second overload simply forwards to the first, after applying
BasicScalar!(Unqual!N).

Why would a checkedint be a base type for a checkedint?


However, I recall that new users tend to get confused/intimidated by template
constraints, so I suppose I should add a prose explanation to the docs, as well.

The fact that anyone has to write !isUnqual, i.e. a double negative, is crummy design. But that's not your fault :-)

Reply via email to