18
Concepts library
[concepts]
18.7
Callable concepts
[concepts.callable]
18.7.3
Concept
regular_invocable
[concept.regularinvocable]
🔗
template
<
class
F,
class
.
.
.
Args
>
concept
regular_invocable
=
invocable
<
F, Args
.
.
.
>
;
1
#
The
invoke
function call expression shall be equality-preserving (
[concepts.
equality]
) and shall not modify the function object or the arguments
.
[
Note
1
:
This requirement supersedes the annotation in the definition of
invocable
.
—
end note
]
2
#
[
Example
1
:
A random number generator does not model
regular_invocable
.
—
end example
]
3
#
[
Note
2
:
The distinction between
invocable
and
regular_invocable
is purely semantic
.
—
end note
]