14namespace QxConceptsPrivate
17template <
class A,
template <
typename...>
class B>
18struct is_specialization_of : std::false_type {};
20template <
typename... Args,
template <
typename...>
class B>
21struct is_specialization_of<B<Args...>, B> : std::true_type {};
23template <
typename A,
template <
typename...>
class B>
24inline constexpr bool is_specialization_of_v = is_specialization_of<A, B>::value;
33template<
class K,
typename T>
36template<
class K,
typename T>
45template<
class K,
typename T>
48template<
class K,
typename T>
57template<
class K,
typename T>
60template<
class K,
typename T>
69template<
class K,
typename T>
72template<
class K,
typename T>
81template<
class K,
typename T>
84template<
class K,
typename T>
93template<
class K,
typename T>
96template<
class K,
typename T>
105template<
class K,
typename T>
108template<
class K,
typename T>
117template<
class K,
typename T>
120template<
class K,
typename T>
129template<
class K,
typename T>
132template<
class K,
typename T>
141template<
class K,
typename T>
144template<
class K,
typename T>
153template<
class K,
typename T>
156template<
class K,
typename T>
197template<
class K,
typename T>
198concept defines_and_for_s =
requires(K klass, T type) {{ klass && type } -> std::same_as<bool>;};
200template<
class K,
typename T>
209template<
class K,
typename T>
210concept defines_or_for_s =
requires(K klass, T type) {{ klass || type } -> std::same_as<bool>;};
212template<
class K,
typename T>
222template<
class K,
typename R,
typename T>
225template<
class K,
typename T>
228template<
class K,
typename R>
234template<
class K,
typename R>
245template<
class K,
typename R,
typename T>
248template<
class K,
typename T>
252template<
class K,
typename R,
typename... Types>
253concept defines_call_for_s =
requires(K klass, Types... args) {{ klass(args...) } -> std::same_as<R>;};
255template<
class K,
typename... Types>
258template<
class K,
typename R>
264template<
class K,
typename T>
267template<
class K,
typename T>
284template<
class K,
typename T>
287template<
class K,
typename T>
296template<
class K,
typename T>
299template<
class K,
typename T>
308template<
class K,
typename T>
311template<
class K,
typename T>
320template<
class K,
typename T>
323template<
class K,
typename T>
332template<
class K,
typename T>
335template<
class K,
typename T>
350template<
class K,
typename T>
353template<
class K,
typename T>
362template<
class K,
typename T>
365template<
class K,
typename T>
374template<
class K,
typename T>
377template<
class K,
typename T>
386template<
class K,
typename T>
389template<
class K,
typename T>
398template<
class K,
typename T>
401template<
class K,
typename T>
411template<
class K,
typename T>
414template<
class K,
typename T>
423template<
class K,
typename T>
426template<
class K,
typename T>
435template<
class K,
typename T>
438template<
class K,
typename T>
447template<
class K,
typename T>
450template<
class K,
typename T>
459template<
class K,
typename T>
462template<
class K,
typename T>
471template<
class K,
typename T>
474template<
class K,
typename T>
483template<
class K,
typename T>
486template<
class K,
typename T>
503concept traverseable = std::bidirectional_iterator<typename K::const_iterator> &&
504 std::is_default_constructible_v<K> &&
505 requires(K klass) {{ klass.size() } -> std::integral<>;};
508template<
class K,
typename T>
512template<
class K,
class ... L>
513concept any_of = (std::same_as<K, L> || ...);
516template<
typename K,
template <
typename...>
class L>
517concept specializes = QxConceptsPrivate::is_specialization_of_v<K, L>;
Specifies that a type is one of several types.
Definition qx-concepts.h:513
Specifies that a type is an arithmetic type.
Definition qx-concepts.h:497
Specifies that a type defines an addition assignment operator for another type (with strict return).
Definition qx-concepts.h:46
Specifies that a type defines an addition assignment operator for another type.
Definition qx-concepts.h:49
Specifies that a type defines an addition assignment operator for itself (with strict return).
Definition qx-concepts.h:52
Specifies that a type defines an addition assignment operator for itself.
Definition qx-concepts.h:55
Specifies that a type defines an addition operator for another type (with strict return).
Definition qx-concepts.h:285
Specifies that a type defines an addition operator for another type.
Definition qx-concepts.h:288
Specifies that a type defines an addition operator for itself (with strict return).
Definition qx-concepts.h:291
Specifies that a type defines an addition operator for itself.
Definition qx-concepts.h:294
Specifies that a type defines an address-of operator (with strict return).
Definition qx-concepts.h:235
Specifies that a type defines an address-of operator.
Definition qx-concepts.h:238
Specifies that a type defines a logical AND operator for another type (with strict return).
Definition qx-concepts.h:198
Specifies that a type defines a logical AND operator for another type.
Definition qx-concepts.h:201
Specifies that a type defines a logical AND operator for itself (with strict return)....
Definition qx-concepts.h:204
Specifies that a type defines a logical AND operator for itself.
Definition qx-concepts.h:207
Specifies that a type defines a simple assignment operator for another type (with strict return).
Definition qx-concepts.h:34
Specifies that a type defines a simple assignment operator for another type.
Definition qx-concepts.h:37
Specifies that a type defines a simple assignment operator for itself (with strict return).
Definition qx-concepts.h:40
Specifies that a type defines a simple assignment operator for itself.
Definition qx-concepts.h:43
Specifies that a type defines a bitwise AND assignment operator for another type (with strict return)...
Definition qx-concepts.h:106
Specifies that a type defines a bitwise AND assignment operator for another type.
Definition qx-concepts.h:109
Specifies that a type defines a bitwise AND assignment operator for itself (with strict return).
Definition qx-concepts.h:112
Specifies that a type defines a bitwise AND assignment operator for itself.
Definition qx-concepts.h:115
Specifies that a type defines a bitwise AND operator for another type (with strict return).
Definition qx-concepts.h:351
Specifies that a type defines a bitwise AND operator for another type.
Definition qx-concepts.h:354
Specifies that a type defines a bitwise AND operator for itself (with strict return).
Definition qx-concepts.h:357
Specifies that a type defines a bitwise AND operator for itself.
Definition qx-concepts.h:360
Specifies that a type defines a bitwise NOT operator (with strict return).
Definition qx-concepts.h:345
Specifies that a type defines a bitwise NOT operator.
Definition qx-concepts.h:348
Specifies that a type defines a bitwise OR assignment operator for another type (with strict return).
Definition qx-concepts.h:118
Specifies that a type defines a bitwise OR assignment operator for another type.
Definition qx-concepts.h:121
Specifies that a type defines a bitwise OR assignment operator for itself (with strict return).
Definition qx-concepts.h:124
Specifies that a type defines a bitwise OR assignment operator for itself.
Definition qx-concepts.h:127
Specifies that a type defines a bitwise OR operator for another type (with strict return).
Definition qx-concepts.h:363
Specifies that a type defines a bitwise OR operator for another type.
Definition qx-concepts.h:366
Specifies that a type defines a bitwise OR operator for itself (with strict return).
Definition qx-concepts.h:369
Specifies that a type defines a bitwise OR operator for itself.
Definition qx-concepts.h:372
Specifies that a type defines a bitwise XOR assignment operator for another type (with strict return)...
Definition qx-concepts.h:130
Specifies that a type defines a bitwise XOR assignment operator for another type.
Definition qx-concepts.h:133
Specifies that a type defines a bitwise XOR assignment operator for itself (with strict return).
Definition qx-concepts.h:136
Specifies that a type defines a bitwise XOR assignment operator for itself.
Definition qx-concepts.h:139
Specifies that a type defines a bitwise XOR operator for another type (with strict return).
Definition qx-concepts.h:375
Specifies that a type defines a bitwise XOR operator for another type.
Definition qx-concepts.h:378
Specifies that a type defines a bitwise XOR operator for itself (with strict return).
Definition qx-concepts.h:381
Specifies that a type defines a bitwise XOR operator for itself.
Definition qx-concepts.h:384
Specifies that a type defines a call operator for the specified argument types (with strict return).
Definition qx-concepts.h:253
Specifies that a type defines a call operator for the specified argument types.
Definition qx-concepts.h:256
Specifies that a type defines a argumentless call operator (with strict return).
Definition qx-concepts.h:259
Specifies that a type defines a argumentless call operator.
Definition qx-concepts.h:262
Specifies that a type defines a comma operator for another type (with strict return).
Definition qx-concepts.h:265
Specifies that a type defines a comma operator for another type.
Definition qx-concepts.h:268
Specifies that a type defines a division assignment operator for another type (with strict return).
Definition qx-concepts.h:82
Specifies that a type defines a division assignment operator for another type.
Definition qx-concepts.h:85
Specifies that a type defines a division assignment operator for itself (with strict return).
Definition qx-concepts.h:88
Specifies that a type defines a division assignment operator for itself.
Definition qx-concepts.h:91
Specifies that a type defines a division operator for another type (with strict return).
Definition qx-concepts.h:321
Specifies that a type defines a division operator for another type.
Definition qx-concepts.h:324
Specifies that a type defines a division operator for itself (with strict return).
Definition qx-concepts.h:327
Specifies that a type defines a division operator for itself.
Definition qx-concepts.h:330
Specifies that a type defines an equal to operator for another type (with strict return).
Definition qx-concepts.h:412
Specifies that a type defines an equal to operator for another type.
Definition qx-concepts.h:415
Specifies that a type defines an equal to operator for itself (with strict return).
Definition qx-concepts.h:418
Specifies that a type defines an equal to operator for itself (with strict return).
Definition qx-concepts.h:421
Specifies that a type defines a greater than or equal to operator for another type (with strict retur...
Definition qx-concepts.h:472
Specifies that a type defines a greater than or equal to operator for another type.
Definition qx-concepts.h:475
Specifies that a type defines a greater than or equal to operator for itself (with strict return).
Definition qx-concepts.h:478
Specifies that a type defines a greater than or equal to operator for itself.
Definition qx-concepts.h:481
Specifies that a type defines a greater than operator for another type (with strict return).
Definition qx-concepts.h:448
Specifies that a type defines a greater than operator for another type.
Definition qx-concepts.h:451
Specifies that a type defines a greater than operator for itself (with strict return).
Definition qx-concepts.h:454
Specifies that a type defines a greater than operator for itself.
Definition qx-concepts.h:457
Specifies that a type defines an indirection operator (with strict return).
Definition qx-concepts.h:229
Specifies that a type defines an indirection operator.
Definition qx-concepts.h:232
Specifies that a type defines a not equal to operator for another type (with strict return).
Definition qx-concepts.h:424
Specifies that a type defines a not equal to operator for another type.
Definition qx-concepts.h:427
Specifies that a type defines a not equal to operator for itself (with strict return).
Definition qx-concepts.h:430
Specifies that a type defines a not equal to operator for itself (with strict return).
Definition qx-concepts.h:433
Specifies that a type defines a left shift assignment operator for another type (with strict return).
Definition qx-concepts.h:142
Specifies that a type defines a left shift assignment operator for another type.
Definition qx-concepts.h:145
Specifies that a type defines a left shift assignment operator for itself (with strict return).
Definition qx-concepts.h:148
Specifies that a type defines a left shift assignment operator for itself.
Definition qx-concepts.h:151
Specifies that a type defines a left shift operator for another type (with strict return).
Definition qx-concepts.h:387
Specifies that a type defines a left shift operator for another type.
Definition qx-concepts.h:390
Specifies that a type defines a left shift operator for itself (with strict return).
Definition qx-concepts.h:393
Specifies that a type defines a left shift operator for itself.
Definition qx-concepts.h:396
Specifies that a type defines a less than or equal to operator for another type (with strict return).
Definition qx-concepts.h:460
Specifies that a type defines a less than or equal to operator for another type.
Definition qx-concepts.h:463
Specifies that a type defines a less than or equal to operator for itself (with strict return).
Definition qx-concepts.h:466
Specifies that a type defines a less than or equal to operator for itself.
Definition qx-concepts.h:469
Specifies that a type defines a less than operator for another type (with strict return).
Definition qx-concepts.h:436
Specifies that a type defines a less than operator for another type.
Definition qx-concepts.h:439
Specifies that a type defines a less than operator for itself (with strict return).
Definition qx-concepts.h:442
Specifies that a type defines a less than operator for itself.
Definition qx-concepts.h:445
Specifies that a type defines a modulo assignment operator for another type (with strict return).
Definition qx-concepts.h:94
Specifies that a type defines a modulo assignment operator for another type.
Definition qx-concepts.h:97
Specifies that a type defines a modulo assignment operator for itself (with strict return).
Definition qx-concepts.h:100
Specifies that a type defines a modulo assignment operator for itself.
Definition qx-concepts.h:103
Specifies that a type defines a modulo operator for another type (with strict return).
Definition qx-concepts.h:333
Specifies that a type defines a modulo operator for another type.
Definition qx-concepts.h:336
Specifies that a type defines a modulo operator for itself (with strict return).
Definition qx-concepts.h:339
Specifies that a type defines a modulo operator for itself.
Definition qx-concepts.h:342
Specifies that a type defines a multiplication assignment operator for another type (with strict retu...
Definition qx-concepts.h:70
Specifies that a type defines a multiplication assignment operator for another type.
Definition qx-concepts.h:73
Specifies that a type defines a multiplication assignment operator for itself (with strict return).
Definition qx-concepts.h:76
Specifies that a type defines a multiplication assignment operator for itself.
Definition qx-concepts.h:79
Specifies that a type defines a multiplication operator for another type (with strict return).
Definition qx-concepts.h:309
Specifies that a type defines a multiplication operator for another type.
Definition qx-concepts.h:312
Specifies that a type defines a multiplication operator for itself (with strict return).
Definition qx-concepts.h:315
Specifies that a type defines a multiplication operator for itself.
Definition qx-concepts.h:318
Specifies that a type defines a negation operator (with strict return).
Definition qx-concepts.h:192
Specifies that a type defines a negation operator.
Definition qx-concepts.h:195
Specifies that a type defines a logical OR operator for another type (with strict return).
Definition qx-concepts.h:210
Specifies that a type defines a logical OR operator for another type.
Definition qx-concepts.h:213
Specifies that a type defines a logical OR operator for itself (with strict return).
Definition qx-concepts.h:216
Specifies that a type defines a logical OR operator for itself.
Definition qx-concepts.h:219
Specifies that a type defines a post-decrement operator (with strict return).
Definition qx-concepts.h:185
Specifies that a type defines a post-decrement operator.
Definition qx-concepts.h:188
Specifies that a type defines a post-increment operator (with strict return).
Definition qx-concepts.h:179
Specifies that a type defines a post-increment operator.
Definition qx-concepts.h:182
Specifies that a type defines a pre-decrement operator (with strict return).
Definition qx-concepts.h:173
Specifies that a type defines a pre-decrement operator.
Definition qx-concepts.h:176
Specifies that a type defines a pre-increment operator (with strict return).
Definition qx-concepts.h:167
Specifies that a type defines a pre-increment operator.
Definition qx-concepts.h:170
Specifies that a type defines a pointer to member of pointer operator (with strict return).
Definition qx-concepts.h:246
Specifies that a type defines a pointer to member of pointer operator.
Definition qx-concepts.h:249
Specifies that a type defines a right shift assignment operator for another type (with strict return)...
Definition qx-concepts.h:154
Specifies that a type defines a right shift assignment operator for another type.
Definition qx-concepts.h:157
Specifies that a type defines a right shift assignment operator for itself (with strict return).
Definition qx-concepts.h:160
Specifies that a type defines a right shift assignment operator for itself.
Definition qx-concepts.h:163
Specifies that a type defines a right shift operator for another type (with strict return).
Definition qx-concepts.h:399
Specifies that a type defines a right shift operator for another type.
Definition qx-concepts.h:402
Specifies that a type defines a right shift operator for itself (with strict return).
Definition qx-concepts.h:405
Specifies that a type defines a right shift operator for itself.
Definition qx-concepts.h:408
Specifies that a type defines a subtraction assignment operator for another type (with strict return)...
Definition qx-concepts.h:58
Specifies that a type defines a subtraction assignment operator for another type.
Definition qx-concepts.h:61
Specifies that a type defines a subtraction assignment operator for itself (with strict return).
Definition qx-concepts.h:64
Specifies that a type defines a subtraction assignment operator for itself.
Definition qx-concepts.h:67
Specifies that a type defines a subtraction operator for another type (with strict return).
Definition qx-concepts.h:297
Specifies that a type defines a subtraction operator for another type.
Definition qx-concepts.h:300
Specifies that a type defines a subtraction operator for itself (with strict return).
Definition qx-concepts.h:303
Specifies that a type defines a subtraction operator for itself.
Definition qx-concepts.h:306
Specifies that a type defines a subscript operator for another type (with strict return).
Definition qx-concepts.h:223
Specifies that a type defines a subscript operator for another type.
Definition qx-concepts.h:226
Specifies that a type defines a three-way comparison operator for another type (with strict return).
Definition qx-concepts.h:484
Specifies that a type defines a three-way comparison operator for another type.
Definition qx-concepts.h:487
Specifies that a type defines a three-way comparison operator for itself (with strict return).
Definition qx-concepts.h:490
Specifies that a type defines a three-way comparison operator for itself.
Definition qx-concepts.h:493
Specifies that a type defines a unary minus operator (with strict return).
Definition qx-concepts.h:279
Specifies that a type defines a unary minus operator.
Definition qx-concepts.h:282
Specifies that a type defines a unary plus operator (with strict return).
Definition qx-concepts.h:273
Specifies that a type defines a unary plus operator.
Definition qx-concepts.h:276
Specifies that a type is a fundamental type.
Definition qx-concepts.h:500
Specifies that a type is a Qt-based associative container type.
Definition qx-concepts.h:521
Specifies that a type is a Qt-based collection type.
Definition qx-concepts.h:525
Specifies that a type is a specialization of a template.
Definition qx-concepts.h:517
Specifies that a type can be statically cast to another type.
Definition qx-concepts.h:509
Specifies that a type is a valid type for Qx::Traverser.
Definition qx-concepts.h:503
The Qx namespace is the main namespace through which all non-global functionality of the Qx library i...
Definition qx-processwaiter.cpp:5