Files
2025-10-25 03:02:53 +03:00

5.0 KiB

[simd.unary]

29 Numerics library [numerics]

29.10 Data-parallel types [simd]

29.10.7 Class template basic_vec [simd.class]

29.10.7.5 basic_vec unary operators [simd.unary]

1

#

Effects in [simd.unary] are applied as unary element-wise operations.

🔗

constexpr basic_vec& operator++() noexcept;

2

#

Constraints: requires (value_type a) { ++a; } is true.

3

#

Effects: Increments every element by one.

4

#

Returns: *this.

🔗

constexpr basic_vec operator++(int) noexcept;

5

#

Constraints: requires (value_type a) { a++; } is true.

6

#

Effects: Increments every element by one.

7

#

Returns: A copy of *this before incrementing.

🔗

constexpr basic_vec& operator--() noexcept;

8

#

Constraints: requires (value_type a) { --a; } is true.

9

#

Effects: Decrements every element by one.

10

#

Returns: *this.

🔗

constexpr basic_vec operator--(int) noexcept;

11

#

Constraints: requires (value_type a) { a--; } is true.

12

#

Effects: Decrements every element by one.

13

#

Returns: A copy of *this before decrementing.

🔗

constexpr mask_type operator!() const noexcept;

14

#

Constraints: requires (const value_type a) { !a; } is true.

15

#

Returns: A basic_mask object with the ith element set to!operator for all i in the range of [0, size()).

🔗

constexpr basic_vec operator~() const noexcept;

16

#

Constraints: requires (const value_type a) { ~a; } is true.

17

#

Returns: A basic_vec object with the ith element set to~operator for all i in the range of [0, size()).

🔗

constexpr basic_vec operator+() const noexcept;

18

#

Constraints: requires (const value_type a) { +a; } is true.

19

#

Returns: *this.

🔗

constexpr basic_vec operator-() const noexcept;

20

#

Constraints: requires (const value_type a) { -a; } is true.

21

#

Returns: A basic_vec object where the ith element is initialized to-operator for all i in the range of [0, size()).