From Jason Turner

[temp.constr.constr.general]

Diff to HTML by rtfpessoa

Files changed (1) hide show
  1. tmp/tmp7hebr0tm/{from.md → to.md} +21 -0
tmp/tmp7hebr0tm/{from.md → to.md} RENAMED
@@ -0,0 +1,21 @@
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
+ #### General <a id="temp.constr.constr.general">[[temp.constr.constr.general]]</a>
2
+
3
+ A *constraint* is a sequence of logical operations and operands that
4
+ specifies requirements on template arguments. The operands of a logical
5
+ operation are constraints. There are three different kinds of
6
+ constraints:
7
+
8
+ - conjunctions [[temp.constr.op]],
9
+ - disjunctions [[temp.constr.op]], and
10
+ - atomic constraints [[temp.constr.atomic]].
11
+
12
+ In order for a constrained template to be instantiated [[temp.spec]],
13
+ its associated constraints [[temp.constr.decl]] shall be satisfied as
14
+ described in the following subclauses.
15
+
16
+ [*Note 1*: Forming the name of a specialization of a class template, a
17
+ variable template, or an alias template [[temp.names]] requires the
18
+ satisfaction of its constraints. Overload resolution
19
+ [[over.match.viable]] requires the satisfaction of constraints on
20
+ functions and function templates. — *end note*]
21
+