Xiaoyang Liu
c3747883a0
[libc++][ranges] use static operator()
for C++23 ranges ( #86052 )
...
## Abstract
This pull request converts the `operator()` of all CPOs and niebloids
related to C++23 ranges to `static`.
## Motivation
In `libc++`, CPOs and niebloids are implemented as function objects.
Currently, the `operator()` for such a function object is a
`const`-qualified member function. This means that even if the function
object is has no data members, an extra register is used to pass in the
`this` pointer when calling `operator()`, unless the compiler can inline
the function call. Declaraing `operator()` as `static` would optimize
away the unnecessary `this` pointer passing for stateless function
objects, since there is no object instance state that needs to be
accessed.
## Reference
- [P1169R4: static `operator()`](https://wg21.link/P1169R4 )
2024-03-23 00:32:02 +01:00
..
2024-01-25 15:48:46 -05:00
2023-12-04 10:25:14 -05:00
2023-12-18 14:01:33 -05:00
2024-01-20 23:38:02 -08:00
2024-01-22 23:31:58 -08:00
2023-11-23 13:55:55 -05:00
2024-03-18 08:29:44 +01:00
2023-12-18 14:01:33 -05:00
2024-03-18 08:29:44 +01:00
2023-12-18 14:01:33 -05:00
2023-12-04 10:25:14 -05:00
2023-12-04 10:25:14 -05:00
2023-10-06 22:58:41 +02:00
2024-03-18 08:29:44 +01:00
2024-03-18 08:32:09 +01:00
2024-03-17 20:00:54 +01:00
2023-12-18 14:01:33 -05:00
2023-12-18 14:01:33 -05:00
2023-12-18 14:01:33 -05:00
2023-12-04 10:25:14 -05:00
2023-12-04 10:25:14 -05:00
2023-12-15 17:10:16 +01:00
2023-12-23 11:21:27 +01:00
2024-01-25 15:48:46 -05:00
2023-12-18 14:01:33 -05:00
2023-11-14 23:55:24 +01:00
2023-12-18 14:01:33 -05:00
2023-12-18 14:01:33 -05:00
2023-12-18 14:01:33 -05:00
2024-01-25 15:48:46 -05:00
2024-01-25 15:48:46 -05:00
2024-01-25 15:48:46 -05:00
2024-01-25 15:48:46 -05:00
2024-01-25 15:48:46 -05:00
2023-12-18 14:01:33 -05:00
2024-01-25 15:48:46 -05:00
2024-03-18 14:19:51 +01:00
2023-12-18 14:01:33 -05:00
2023-12-18 14:01:33 -05:00
2023-12-18 14:01:33 -05:00
2023-12-18 14:01:33 -05:00
2023-12-18 14:01:33 -05:00
2023-12-18 14:01:33 -05:00
2023-12-18 14:01:33 -05:00
2023-12-18 14:01:33 -05:00
2024-03-18 08:29:44 +01:00
2023-12-18 14:01:33 -05:00
2023-12-18 14:01:33 -05:00
2023-12-18 14:01:33 -05:00
2023-12-18 14:01:33 -05:00
2023-12-18 14:01:33 -05:00
2023-12-18 14:01:33 -05:00
2023-12-18 14:01:33 -05:00
2023-12-18 14:01:33 -05:00
2023-12-18 14:01:33 -05:00
2023-12-18 14:01:33 -05:00
2023-12-18 14:01:33 -05:00
2023-12-18 14:01:33 -05:00
2023-12-18 14:01:33 -05:00
2024-03-18 08:29:44 +01:00
2024-03-18 08:29:44 +01:00
2024-01-25 15:48:46 -05:00
2023-12-04 10:25:14 -05:00
2024-01-25 15:48:46 -05:00
2024-01-25 15:48:46 -05:00
2024-03-18 08:29:44 +01:00
2023-12-18 14:01:33 -05:00
2023-12-18 14:01:33 -05:00
2024-01-25 15:48:46 -05:00
2024-03-18 08:29:44 +01:00
2024-01-25 15:48:46 -05:00
2024-01-25 15:48:46 -05:00
2023-11-28 16:02:18 -05:00
2024-01-25 15:48:46 -05:00
2024-01-25 15:48:46 -05:00
2024-01-25 15:48:46 -05:00
2024-01-25 15:48:46 -05:00
2024-01-25 15:48:46 -05:00
2024-01-25 15:48:46 -05:00
2023-10-04 18:12:39 -04:00
2024-01-25 15:48:46 -05:00
2024-01-25 15:48:46 -05:00
2024-01-25 15:48:46 -05:00
2024-01-25 15:48:46 -05:00
2024-01-25 15:48:46 -05:00
2024-01-25 15:48:46 -05:00
2024-01-25 15:48:46 -05:00
2024-01-25 15:48:46 -05:00
2024-01-25 15:48:46 -05:00
2024-03-18 08:29:44 +01:00
2024-01-25 15:48:46 -05:00
2024-01-25 15:48:46 -05:00
2024-01-25 15:48:46 -05:00
2024-01-25 15:48:46 -05:00
2024-02-13 15:42:37 -08:00
2024-01-25 15:48:46 -05:00
2024-01-25 15:48:46 -05:00
2024-01-25 15:48:46 -05:00
2024-01-25 15:48:46 -05:00
2024-01-25 15:48:46 -05:00
2024-01-25 15:48:46 -05:00
2024-01-25 15:48:46 -05:00
2024-03-23 00:32:02 +01:00
2024-01-25 15:48:46 -05:00
2024-01-25 15:48:46 -05:00
2024-01-25 15:48:46 -05:00
2024-01-25 15:48:46 -05:00
2024-01-25 15:48:46 -05:00
2024-01-25 15:48:46 -05:00
2024-01-25 15:48:46 -05:00
2024-01-25 15:48:46 -05:00
2024-01-25 15:48:46 -05:00
2024-01-25 15:48:46 -05:00
2024-01-25 15:48:46 -05:00
2024-01-25 15:48:46 -05:00
2024-01-25 15:48:46 -05:00
2024-01-25 15:48:46 -05:00
2024-01-25 15:48:46 -05:00
2024-01-25 15:48:46 -05:00
2024-01-25 15:48:46 -05:00
2024-01-25 15:48:46 -05:00
2024-01-25 15:48:46 -05:00
2024-01-25 15:48:46 -05:00
2024-01-25 15:48:46 -05:00
2024-01-25 15:48:46 -05:00
2024-01-25 15:48:46 -05:00
2024-01-25 15:48:46 -05:00
2024-01-25 15:48:46 -05:00
2024-01-25 15:48:46 -05:00
2024-01-24 09:41:02 -05:00
2024-01-25 15:48:46 -05:00
2024-01-25 15:48:46 -05:00
2024-01-24 09:41:02 -05:00
2024-01-25 15:48:46 -05:00
2023-12-20 17:24:48 -08:00
2024-01-25 15:48:46 -05:00
2024-01-25 15:48:46 -05:00
2024-01-25 15:48:46 -05:00
2024-01-25 15:48:46 -05:00
2024-01-25 15:48:46 -05:00
2024-01-25 15:48:46 -05:00
2024-01-25 15:48:46 -05:00
2024-01-25 15:48:46 -05:00
2024-01-25 15:48:46 -05:00
2024-01-25 15:48:46 -05:00
2024-01-25 15:48:46 -05:00
2024-01-25 15:48:46 -05:00
2024-01-25 15:48:46 -05:00
2024-01-25 15:48:46 -05:00
2024-01-25 15:48:46 -05:00
2024-01-25 15:48:46 -05:00
2024-01-25 15:48:46 -05:00
2024-01-25 15:48:46 -05:00
2024-01-25 15:48:46 -05:00
2024-01-25 15:48:46 -05:00
2024-01-25 15:48:46 -05:00
2024-01-25 15:48:46 -05:00
2024-01-25 15:48:46 -05:00
2024-01-25 15:48:46 -05:00
2024-01-25 15:48:46 -05:00
2024-01-25 15:48:46 -05:00
2024-01-25 15:48:46 -05:00
2024-01-25 15:48:46 -05:00
2024-01-25 15:48:46 -05:00
2024-01-25 15:48:46 -05:00
2024-01-25 15:48:46 -05:00
2024-01-25 15:48:46 -05:00
2024-01-25 15:48:46 -05:00
2024-01-25 15:48:46 -05:00
2024-01-25 15:48:46 -05:00
2024-01-25 15:48:46 -05:00
2024-03-23 00:32:02 +01:00
2024-01-25 15:48:46 -05:00
2024-01-25 15:48:46 -05:00
2024-01-25 15:48:46 -05:00
2024-01-25 15:48:46 -05:00
2023-11-06 21:19:49 -10:00
2023-12-18 14:01:33 -05:00
2023-12-18 14:01:33 -05:00
2024-01-25 15:48:46 -05:00
2024-01-25 15:48:46 -05:00
2023-12-18 14:01:33 -05:00
2023-12-18 14:01:33 -05:00
2023-12-18 14:01:33 -05:00
2023-12-18 14:01:33 -05:00
2023-12-18 14:01:33 -05:00
2024-01-25 15:48:46 -05:00
2023-12-18 14:01:33 -05:00
2024-03-18 08:29:44 +01:00
2023-12-20 17:24:48 -08:00
2024-02-20 01:47:38 +01:00
2024-02-20 01:47:38 +01:00
2024-01-25 15:48:46 -05:00
2024-01-25 15:48:46 -05:00
2024-01-25 15:48:46 -05:00
2024-01-25 15:48:46 -05:00
2024-01-25 15:48:46 -05:00
2024-01-25 15:48:46 -05:00
2023-12-18 14:01:33 -05:00
2024-01-05 16:29:23 -08:00
2024-03-18 08:29:44 +01:00
2024-01-25 15:48:46 -05:00
2024-01-25 15:48:46 -05:00
2024-03-18 08:29:44 +01:00
2024-01-25 15:48:46 -05:00
2024-01-22 23:31:58 -08:00
2023-12-18 14:01:33 -05:00
2023-12-18 14:01:33 -05:00
2024-01-25 15:48:46 -05:00
2024-01-25 15:48:46 -05:00
2024-03-18 08:29:44 +01:00
2024-01-25 15:48:46 -05:00
2024-03-18 08:29:44 +01:00