From Jason Turner

[time.traits.is.clock]

Diff to HTML by rtfpessoa

Files changed (1) hide show
  1. tmp/tmpvwvweypt/{from.md → to.md} +24 -0
tmp/tmpvwvweypt/{from.md → to.md} RENAMED
@@ -0,0 +1,24 @@
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
+ ### Class template `is_clock` <a id="time.traits.is.clock">[[time.traits.is.clock]]</a>
2
+
3
+ ``` cpp
4
+ template<class T> struct is_clock;
5
+ ```
6
+
7
+ `is_clock` is a *Cpp17UnaryTypeTrait* [[meta.rqmts]] with a base
8
+ characteristic of `true_type` if `T` meets the *Cpp17Clock* requirements
9
+ [[time.clock.req]], otherwise `false_type`. For the purposes of the
10
+ specification of this trait, the extent to which an implementation
11
+ determines that a type cannot meet the *Cpp17Clock* requirements is
12
+ unspecified, except that as a minimum a type `T` shall not qualify as a
13
+ *Cpp17Clock* unless it meets all of the following conditions:
14
+
15
+ - the *qualified-id*s `T::rep`, `T::period`, `T::duration`, and
16
+ `T::time_point` are valid and each denotes a type [[temp.deduct]],
17
+ - the expression `T::is_steady` is well-formed when treated as an
18
+ unevaluated operand,
19
+ - the expression `T::now()` is well-formed when treated as an
20
+ unevaluated operand.
21
+
22
+ The behavior of a program that adds specializations for `is_clock` is
23
+ undefined.
24
+