Every function described in this subclause [rand.adapt]
that has a function parameter q of type Sseq&
for a template type parameter named Sseq
that is different from type seed_seq
throws what and when the invocation of q.generate throws.
Descriptions are provided in this subclause [rand.adapt]
only for adaptor operations
that are not described in subclause [rand.req.adapt]
or for operations where there is additional semantic information.
In particular,
declarations for copy constructors,
for copy assignment operators,
for streaming operators,
and for equality and inequality operators
are not shown in the synopses.
Each template specified in this subclause [rand.adapt]
requires one or more relationships,
involving the value(s) of its non-type template parameter(s), to hold.
A program instantiating any of these templates
is ill-formed
if any such required relationship fails to hold.