Skip to content

Commit af3ee5e

Browse files
committed
Should be mergeable
1 parent fe1c61f commit af3ee5e

34 files changed

+329
-125
lines changed

doc/Doxyfile

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -439,7 +439,7 @@ GROUP_NESTED_COMPOUNDS = NO
439439
# \nosubgrouping command.
440440
# The default value is: YES.
441441

442-
SUBGROUPING = YES
442+
SUBGROUPING = NO
443443

444444
# When the INLINE_GROUPED_CLASSES tag is set to YES, classes, structs and unions
445445
# are shown inside the group in which they are included (e.g. using \ingroup)

doc/index.hpp

Lines changed: 15 additions & 11 deletions
Original file line numberDiff line numberDiff line change
@@ -7,11 +7,11 @@
77
//! `std::tuple` as possible but also wants to compile faster, uses a better C++20 oriented interface,
88
//! and new features like:
99
//!
10-
//! - a fast to compile tuple implementation
11-
//! - quality of life improvement over the standard tuple implementation
12-
//! - a protocol to adapt user-defined type to act as tuples
13-
//! - algorithm on tuples
14-
//! - record type handling
10+
//! - A fast to compile tuple implementation
11+
//! - Quality of life improvement over the standard tuple implementation
12+
//! - A protocol to adapt user-defined type to act as tuples
13+
//! - Algorithm on tuples
14+
//! - Record type handling
1515
//!
1616
//! # Examples
1717
//!
@@ -33,9 +33,9 @@
3333
//! auto student0 = get_student(0);
3434
//!
3535
//! std::cout << "ID: 0, "
36-
//! << "GPA: " << kumi::get<0>(student0) << ", "
37-
//! << "grade: " << kumi::get<1>(student0) << ", "
38-
//! << "name: " << kumi::get<2>(student0) << '\n';
36+
//! << "GPA: " << kumi::get<0>(student0) << ", "
37+
//! << "grade: " << kumi::get<1>(student0) << ", "
38+
//! << "name: " << kumi::get<2>(student0) << '\n';
3939
//!
4040
//! auto [ gpa1, grade1, name1 ] = get_student(1);
4141
//! std::cout << "ID: 1, "
@@ -46,7 +46,9 @@
4646
//!
4747
//! auto all_students = kumi::make_tuple(get_student(0),get_student(1),get_student(2));
4848
//!
49-
//! kumi::for_each_index( [](auto i, auto const& m) { std::cout << "Data #" << i << " : " << m << "\n";}
49+
//! kumi::for_each_index( [](auto i, auto const& m) {
50+
//! std::cout << "Data #" << i << " : " << m << "\n";
51+
//! }
5052
//! , all_students
5153
//! );
5254
//! std::cout << "\n";
@@ -75,7 +77,7 @@
7577
//! auto student0 = get_student(0);
7678
//!
7779
//! std::cout << "ID: 0, "
78-
//! << "GPA: " << kumi::get<"GPA"_f>(student0) << ", "
80+
//! << "GPA: " << kumi::get<"GPA"_f>(student0) << ", "
7981
//! << "grade: " << kumi::get<"grade"_f>(student0) << '\n';
8082
//!
8183
//! auto [ gpa1, grade1 ] = get_student(1);
@@ -90,7 +92,9 @@
9092
//! "Ralph Wiggum"_f = get_student(2)
9193
//! );
9294
//!
93-
//! kumi::for_each_field( [](auto name, auto const& m) { std::cout << "Student: " << name << ", Data : " << m << "\n";}
95+
//! kumi::for_each_field( [](auto name, auto const& m) {
96+
//! std::cout << "Student: " << name << ", Data : " << m << "\n";
97+
//! }
9498
//! , all_students
9599
//! );
96100
//! std::cout << "\n";

doc/licence.md

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -3,7 +3,7 @@ Licence {#licence}
33

44
This library is licensed under the [Boost Software License](http://opensource.org/licenses/MIT):
55

6-
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ none
6+
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~none
77
Copyright : KUMI Project Contributors
88
99
Permission is hereby granted, free of charge, to any person or organization obtaining a copy of the

doc/setup.hpp

Lines changed: 2 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -5,9 +5,10 @@
55
@page setup Setup
66
77
@tableofcontents
8+
89
@section prerequisit Pre-requisites
910
10-
**KUMI** requires a C++20 compliant compiler. Here is the current minimal compiler version supported:
11+
The **KUMI** librarie requires a C++20 compliant compiler. Here are the current minimal compiler version supported:
1112
1213
| Compiler | Version |
1314
| -------------- | -------------- |

include/kumi/algorithm.hpp

Lines changed: 11 additions & 8 deletions
Original file line numberDiff line numberDiff line change
@@ -11,18 +11,21 @@ namespace kumi
1111
{
1212
//================================================================================================
1313
//! @defgroup algorithm Product Type Algorithms
14-
//! @brief Algorithms for manipulating kumi::product_type
14+
//! @brief Algorithms for manipulating Product types
1515
//!
1616
//! @addtogroup algorithm
1717
//! @{
1818
//! @defgroup transforms Product Type Transformations
19-
//! @brief Algorithms applying transformation to product types
20-
//!
21-
//! @defgroup tuple_transforms Tuple Type Specific Transformations
22-
//! @brief Algorithms applying transformation to tuples
23-
//!
24-
//! @defgroup record_transforms Record Type Specific Transformations
25-
//! @brief Algorithms applying transformation to records
19+
//! @brief Algorithms applying transformation to product types
20+
//!
21+
//! @addtogroup transforms
22+
//! @{
23+
//! @defgroup tuple_transforms Tuple Type Specific Transformations
24+
//! @brief Algorithms applying transformation to tuples
25+
//!
26+
//! @defgroup record_transforms Record Type Specific Transformations
27+
//! @brief Algorithms applying transformation to records
28+
//! @}
2629
//!
2730
//! @defgroup queries Product Type Queries
2831
//! @brief Algorithms querying properties from product types

include/kumi/algorithm/back-front.hpp

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -12,7 +12,7 @@
1212
namespace kumi
1313
{
1414
//================================================================================================
15-
//! @ingroup utility
15+
//! @ingroup queries
1616
//! @brief Retrieves the front of a product type
1717
//!
1818
//! @param t Base product type
@@ -42,7 +42,7 @@ namespace kumi
4242
}
4343

4444
//================================================================================================
45-
//! @ingroup utility
45+
//! @ingroup queries
4646
//! @brief Retrieves the back of a product type
4747
//!
4848
//! @param t Base product type

include/kumi/algorithm/cat.hpp

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -16,7 +16,7 @@ namespace kumi
1616
//! @brief Concatenates product types in a single one
1717
//!
1818
//! @param ts Product types to concatenate
19-
//! @return A product type made of all element of all input product types in order
19+
//! @return A product type made of all element of all input product types in order.
2020
//!
2121
//! ## Helper type
2222
//! @code

include/kumi/algorithm/extract.hpp

Lines changed: 6 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -21,7 +21,7 @@ namespace kumi
2121
//! @param i0 Compile-time index of the first element to extract.
2222
//! @param i1 Compile-time index past the last element to extract. By default, `i1` is equal to
2323
//! `size_v<T>`.
24-
//! @return A new kumi::tuple containing to the selected elements of the input tuple.
24+
//! @return A new product type containing to the selected elements of the input tuple.
2525
//!
2626
//! ## Helper type
2727
//! @code
@@ -38,6 +38,7 @@ namespace kumi
3838
//!
3939
//! ## Example:
4040
//! @include doc/extract.cpp
41+
//! @include doc/record/extract.cpp
4142
//================================================================================================
4243
template<std::size_t I0, std::size_t I1, product_type T>
4344
requires( (I0 <= size_v<T>) && (I1 <= size_v<T>) )
@@ -57,7 +58,7 @@ namespace kumi
5758

5859
//! @overload
5960
template<std::size_t I0, product_type T>
60-
requires(I0 <= size_v<T>)
61+
requires( I0 <= size_v<T> )
6162
[[nodiscard]] KUMI_ABI constexpr auto extract(T && t, index_t<I0> i0) noexcept
6263
{
6364
return extract(KUMI_FWD(t), i0, index<size_v<T>>);
@@ -67,14 +68,14 @@ namespace kumi
6768
//! @ingroup generators
6869
//! @brief Split a product type into two
6970
//!
70-
//! Split a @ref kumi::product_type in two kumi::product_type containing all the elements before
71+
//! Split a product type in two product_type containing all the elements before
7172
//! and after a given index.
7273
//!
7374
//! @note Does not participate in overload resolution if `I0` is not in `[0, sizeof...(Ts)[`.
7475
//!
7576
//! @param t Product Type to split.
7677
//! @param i0 Compile-time index of the split pivot.
77-
//! @return A new kumi::tuple containing the two sub product types cut at index I.
78+
//! @return A new tuple containing the two sub product types cut at index I.
7879
//!
7980
//! ## Helper type
8081
//! @code
@@ -94,7 +95,7 @@ namespace kumi
9495
//! @include doc/record/split.cpp
9596
//================================================================================================
9697
template<std::size_t I0, product_type T>
97-
requires(I0 <= size_v<T>)
98+
requires( I0 <= size_v<T> )
9899
[[nodiscard]] KUMI_ABI constexpr auto split( T && t
99100
, [[maybe_unused]] index_t<I0> i0
100101
) noexcept

include/kumi/algorithm/find.hpp

Lines changed: 2 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -16,8 +16,10 @@ namespace kumi
1616
//! @param p Unary predicate. p must return a value convertible to `bool` for every element of t.
1717
//! @return Integral index of the element inside the product type if present,
1818
//! kumi::size<tuple<T...>>::value otherwise.
19+
//!
1920
//! ## Example:
2021
//! @include doc/locate.cpp
22+
//! @include doc/record/locate.cpp
2123
//================================================================================================
2224
template<typename Pred, product_type T>
2325
[[nodiscard]] KUMI_ABI constexpr auto locate( T && t, Pred p ) noexcept

include/kumi/algorithm/flatten.hpp

Lines changed: 2 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -113,6 +113,7 @@ namespace kumi
113113
//!
114114
//! ## Example
115115
//! @include doc/flatten.cpp
116+
//! @include doc/record/flatten.cpp
116117
//================================================================================================
117118
template<product_type T> [[nodiscard]] KUMI_ABI constexpr auto flatten(T && t)
118119
{
@@ -166,6 +167,7 @@ namespace kumi
166167
//!
167168
//! ## Example
168169
//! @include doc/flatten_all.cpp
170+
//! @include doc/record/flatten_all.cpp
169171
//================================================================================================
170172
template<product_type T, typename Func>
171173
[[nodiscard]] KUMI_ABI constexpr auto flatten_all(T && t, Func && f)

0 commit comments

Comments
 (0)