Commit Graph

48 Commits

Author SHA1 Message Date
Louis Dionne
8b2bf22c2d [std.array] Fix UB in std.array.less for empty array
We were using `&arr[0]` on empty arrays, which is technically UB since `arr[0]`
is UB on empty arrays. This triggered an infinite loop on Clang-on-Windows.
2017-05-13 12:59:45 -07:00
Louis Dionne
9895803ede Bump copyright year to 2017 2017-01-07 14:14:18 -08:00
Louis Dionne
b1696fe0cc [Metafunction] Do not automatically call decltype_ on metafunction arguments 2016-02-15 10:07:08 -05:00
Louis Dionne
23c3edc93b [NFC] Un-Doxygenize comments in non-header files 2016-02-04 11:07:41 -05:00
Louis Dionne
d60646237d [core] Rename core/convert.hpp to core/to.hpp 2016-01-10 18:32:57 -05:00
Louis Dionne
c41a5cb6be Update copyright notices for 2016 2016-01-01 14:54:06 -05:00
Louis Dionne
aa9ff56984 [Example] Fix compilation errors on Boost.Fusion trunk 2015-11-16 07:48:01 -05:00
Louis Dionne
2a0bf6b34f [std::ratio] Add documentation 2015-11-15 15:16:31 -05:00
Louis Dionne
b906aeb277 [std::pair] Add documentation 2015-11-15 15:16:31 -05:00
Louis Dionne
d54fb5fa32 [boost::tuple] Add documentation 2015-11-15 15:16:31 -05:00
Louis Dionne
735fc4e628 [std::tuple] Add documentation 2015-11-15 15:16:31 -05:00
Louis Dionne
371c07e62d [std::integral_constant] Add documentation 2015-11-15 15:16:31 -05:00
Louis Dionne
11a7300651 [Fusion] Document adapters 2015-11-15 15:16:31 -05:00
Louis Dionne
f307d74daa [mpl::list] Refactor the reference documentation 2015-11-15 15:16:31 -05:00
Louis Dionne
e93de9580c [mpl::integral_c] Refactor the documentation 2015-11-15 15:16:31 -05:00
Louis Dionne
b86580c593 [mpl::vector] Refactor the reference documentation 2015-11-15 15:16:31 -05:00
Louis Dionne
184bdad14a [std::integer_sequence] Document and add examples 2015-11-15 15:16:30 -05:00
Louis Dionne
11096eb1d0 [std::array] Document properly and add examples 2015-11-15 15:16:30 -05:00
Louis Dionne
e13d826496 [MPL] Add support for mpl::list 2015-11-12 14:23:15 -05:00
Louis Dionne
3707877225 [Iterable] Remove the tail function
Closes #158
2015-11-11 14:08:36 -05:00
Louis Dionne
673a84c787 [ext/] Rename tags to xxx_tag for external adapters 2015-09-03 13:29:17 -04:00
Louis Dionne
08f66d47c1 [IntegralConstant] Suffix variable templates with _c, and clean up type names
Along with PR #166, this closes #122 because names have now been
cleaned up and are now consistent basically everywhere.
2015-09-01 16:34:04 -04:00
Louis Dionne
c2ed70ddf9 [Doc] Document hana::type instead of hana::Type
Precisely,
1. Rename hana::_type to hana::basic_type, and document it
2. Rename hana::type<> to hana::type_c<>
3. Create and document the hana::type<> type
2015-08-30 17:08:06 -04:00
Louis Dionne
f373b421f9 [Headers] Minimize the #includes in headers
- Allow specializing models_impl with a forward declaration only
- Modularize remaining concept headers
- Include <boost/hana.hpp> in unit tests to ease the transition
- Add the core/dispatch.hpp header to reduce the number of boilerplate includes
2015-08-26 11:27:28 -04:00
Louis Dionne
08b3db1708 [Examples] Modularize and use qualified names
This patch modularizes the examples, makes them self-contained and
also uses qualified hana:: names.

Fixes #139
Fixes #126
2015-08-15 17:50:40 +02:00
Louis Dionne
09955bf1b7 Use drop_front/drop_back front/back instead of asymmetrical names
- Replace init by drop_back and drop_back_exactly
- Rename head to front
- Rename last to back, and also rewrite the default implementation
  in terms of at instead of using (inefficient) recursion.
- Rename drop[_exactly] to drop_front[_exactly]
- Remove drop_c

Note that tail is kept for the moment because it is part of Iterable's
MCD. Removing tail will be the subject of a different issue.

Fixes #66
2015-06-28 10:44:28 +02:00
Louis Dionne
b5a9a2e2c9 [Foldable] Rename fold.{left,right} to fold_{left,right}
Fixes #106
2015-06-14 10:07:04 -04:00
Louis Dionne
9c2d3b396a Rename Maybe to Optional 2015-06-08 14:49:26 -04:00
Louis Dionne
9a412f9c39 [MPL] Add a conversion from Foldables to MPL vectors
Also, properly split the unit tests for mpl::vector
2015-04-26 14:20:15 -04:00
Louis Dionne
2c86ba2390 [Foldable] Rename the different fold variants
- Rename fold{l,r,l1,r1} to fold.{right,left} with overloads.
- Rename foldlM/foldrM to monadic_fold.{left,right}
- Add no-state variants of the monadic folds
- Improve the fold's documentation
- Deprecate the previous folds; they'll be removed soon

Fixes #18.
2015-03-30 17:29:37 -04:00
Louis Dionne
463040d318 [Searchable] Rename find to find_if and lookup to find 2015-03-15 00:18:31 -04:00
Louis Dionne
065b910128 Update copyright year. 2015-03-03 14:16:50 -05:00
Louis Dionne
7e2bcdfee0 [ext/mpl] MPL vectors are not Sequences anymore 2015-02-27 11:34:21 -05:00
Louis Dionne
aa6eac6c3d [Config] Move BOOST_HANA_CONSTEXPR_LAMBDA to config.hpp 2015-02-25 10:20:12 -05:00
Louis Dionne
d120513366 Rename cons to prepend and snoc to append 2015-02-22 14:55:35 -05:00
Louis Dionne
62ede37419 Rename fmap to transform 2015-02-22 14:55:35 -05:00
Louis Dionne
02c9c47510 Remove TypeList and IntegerList 2015-02-15 12:38:04 -05:00
Louis Dionne
17d2ce584c [Integral] Rename to IntegralConstant and improve the API 2015-02-10 20:03:49 -05:00
Louis Dionne
8756e81977 Add boost/hana/config.hpp and BOOST_HANA_*_CHECK macros. 2014-11-10 17:52:33 -05:00
Louis Dionne
049046478e Move ASSERT macros out of the details 2014-11-04 09:43:44 -05:00
Louis Dionne
26af39f3d9 Flip the arguments of several methods.
Flipped:
- traverse
- fmap, adjust, fill, replace
- drop_while, drop_until
- take_while, take_until
2014-08-29 10:24:19 -04:00
Louis Dionne
4df8c27cbb Finer grained use of operators 2014-08-07 21:05:38 -04:00
Louis Dionne
da8135ccec Foldable: flip the arguments of some methods 2014-08-05 19:52:44 -04:00
Louis Dionne
2900faec86 List: flip the order of arguments of some methods 2014-08-05 19:52:44 -04:00
Louis Dionne
7bd5afd95f Ext: show all the includes in the examples, because some includes are tricky 2014-08-05 15:06:56 -04:00
Louis Dionne
d132db0ebf Use finer grained assertions acknowledging Constants 2014-08-05 10:37:54 -04:00
Louis Dionne
8c683c6e08 Adapt MPL IntegralConstants with Constant. 2014-07-30 19:00:06 -04:00
Louis Dionne
f66871ec2c MPLVector: Document and instantiate List. 2014-07-29 15:44:45 -04:00