From Jason Turner

[simd.mask.ctor]

Diff to HTML by rtfpessoa

Files changed (1) hide show
  1. tmp/tmpz2p096fi/{from.md → to.md} +50 -0
tmp/tmpz2p096fi/{from.md → to.md} RENAMED
@@ -0,0 +1,50 @@
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
+ #### Constructors <a id="simd.mask.ctor">[[simd.mask.ctor]]</a>
2
+
3
+ ``` cpp
4
+ constexpr explicit basic_mask(value_type x) noexcept;
5
+ ```
6
+
7
+ *Effects:* Initializes each element with `x`.
8
+
9
+ ``` cpp
10
+ template<size_t UBytes, class UAbi>
11
+ constexpr explicit basic_mask(const basic_mask<UBytes, UAbi>& x) noexcept;
12
+ ```
13
+
14
+ *Constraints:* `basic_mask<UBytes, UAbi>::size() == size()` is `true`.
15
+
16
+ *Effects:* Initializes the iᵗʰ element with `x[`i`]` for all i in the
17
+ range of \[`0`, `size()`).
18
+
19
+ ``` cpp
20
+ template<class G> constexpr explicit basic_mask(G&& gen);
21
+ ```
22
+
23
+ *Constraints:* The expression
24
+ `gen(integral_constant<`*`simd-size-type`*`, i>())` is well-formed and
25
+ its type is `bool` for all i in the range of \[`0`, `size()`).
26
+
27
+ *Effects:* Initializes the iᵗʰ element with
28
+ `gen(integral_constant<`*`simd-size-type`*`, i>())` for all i in the
29
+ range of \[`0`, `size()`).
30
+
31
+ *Remarks:* `gen` is invoked exactly once for each i, in increasing order
32
+ of i.
33
+
34
+ ``` cpp
35
+ constexpr basic_mask(const bitset<size()>& b) noexcept;
36
+ ```
37
+
38
+ *Effects:* Initializes the iᵗʰ element with `b[`i`]` for all i in the
39
+ range \[`0`, `size()`).
40
+
41
+ ``` cpp
42
+ constexpr explicit basic_mask(unsigned_integral auto val) noexcept;
43
+ ```
44
+
45
+ *Effects:* Initializes the first M elements to the corresponding bit
46
+ values in `val`, where M is the smaller of `size()` and the number of
47
+ bits in the value representation [[basic.types.general]] of the type of
48
+ `val`. If M is less than `size()`, the remaining elements are
49
+ initialized to zero.
50
+