This commit is contained in:
2025-10-25 03:02:53 +03:00
commit 043225d523
3416 changed files with 681196 additions and 0 deletions

View File

@@ -0,0 +1,29 @@
[concepts.compare.general]
# 18 Concepts library [[concepts]](./#concepts)
## 18.5 Comparison concepts [[concepts.compare]](concepts.compare#general)
### 18.5.1 General [concepts.compare.general]
[1](#1)
[#](http://github.com/Eelis/draft/tree/9adde4bc1c62ec234483e63ea3b70a59724c745a/source/concepts.tex#L843)
Subclause [[concepts.compare]](concepts.compare "18.5Comparison concepts") describes concepts that establish relationships and orderings
on values of possibly differing object types[.](#1.sentence-1)
[2](#2)
[#](http://github.com/Eelis/draft/tree/9adde4bc1c62ec234483e63ea3b70a59724c745a/source/concepts.tex#L847)
Given an expression E and a type C,
let *CONVERT_TO_LVALUE*<C>(E) be:
- [(2.1)](#2.1)
static_cast<const C&>(as_const(E)) if that is a valid expression, and
- [(2.2)](#2.2)
static_cast<const C&>(std::move(E)) otherwise[.](#2.sentence-1)