Louis Dionne
17d2ce584c
[Integral] Rename to IntegralConstant and improve the API
2015-02-10 20:03:49 -05:00
Louis Dionne
5dd70cbf3a
[String] Remove the Constant model and document why
2015-02-10 19:18:40 -05:00
Louis Dionne
88549c004c
[IntegralConstant] Remove the concept
2015-02-10 19:18:40 -05:00
Louis Dionne
dab93cc263
[Comparable] Update docs, split methods and more
...
- Use == for cross-type EqualityComparable data types
- Remove the not_equal mcd
2015-02-10 19:18:40 -05:00
Louis Dionne
9ddad3dc22
[Orderable] Split completely
2015-02-10 18:04:30 -05:00
Louis Dionne
c2b51f3780
[Logical] Split completely
2015-02-10 18:04:30 -05:00
Louis Dionne
1d3aaa93c4
[Monoid up to IntDomain] Refactor the documentation and split the methods
2015-02-10 18:03:42 -05:00
Louis Dionne
a06100c268
[Enumerable] Refactor the documentation and split the methods
2015-02-10 18:03:19 -05:00
Louis Dionne
04985812f8
[Range] Specify what happens when from
and to
have different underlying types
2015-02-10 18:03:19 -05:00
Louis Dionne
0ac6753f27
[Constant] Update the Constant concept and its models
...
- Provide a conversion to the underlying data type
- Provide a common data type when it makes sense
- Remove Constant::instance and Constant::mcd
- Split the methods of all the models
- Make sure all models provide a nested value_type
- Make sure all models provide conversions whenever possible
2015-02-10 18:03:19 -05:00
Louis Dionne
c0690e3747
[CMake] Do not generate header-inclusion tests for ext/boost/* when Boost is not found
2015-02-10 18:03:19 -05:00
Louis Dionne
74fe83c517
[Detail] Add detail::std::is_non_boolean_arithmetic
2015-02-10 18:03:18 -05:00
Louis Dionne
2604c9eb53
[Detail] Add the CanonicalConstant helper
2015-02-10 18:03:18 -05:00
Louis Dionne
1683999b4e
[Detail] Add std::conditional
2015-02-10 18:03:18 -05:00
Louis Dionne
551cb2f0b6
[Detail] Add detail::has_common_embedding
2015-02-10 18:03:18 -05:00
Louis Dionne
61d59eff57
[Core] Refactor the conversion system, hana::common and add hana::default
2015-02-10 18:02:32 -05:00
Louis Dionne
aefbc90a10
[Lazy] Fix a broken link to an example in the docs
2015-02-08 15:01:55 -05:00
Louis Dionne
50dc7506ff
[Functional] Make the placeholder-based operators SFINAE-friendly
2015-02-08 10:51:00 -05:00
Louis Dionne
72169c81c1
[Detail] Make std::common_type SFINAE friendly
2015-02-08 10:50:14 -05:00
Louis Dionne
d6ef326e94
[Product] Split methods, refactor doc and add Orderable instance
2015-02-08 10:43:12 -05:00
Louis Dionne
738041d159
[Core] Add the wrong
utility to make static asserts dependent.
2015-02-08 10:29:09 -05:00
Louis Dionne
d479e0f711
[Set] Split methods and refactor the documentation
2015-02-08 09:49:19 -05:00
Louis Dionne
b2b4a09f10
[Map] Split methods and refactor documentation.
2015-02-08 09:49:19 -05:00
Louis Dionne
733e9967ac
[Core] Use proper tag-dispatching with make
2015-02-08 09:49:18 -05:00
Louis Dionne
ca31fe399c
[Range] Split methods and refactor documentation
2015-02-08 09:22:39 -05:00
Louis Dionne
7f52833db6
[Lazy] Split methods and refactor documentation
2015-02-08 09:22:39 -05:00
Louis Dionne
d5076888fb
[Type] Split methods and refactor the documentation
2015-02-08 09:22:39 -05:00
Louis Dionne
4892c4ad42
[Tuple] Add tuple_t and tuple_c to ease the transition to split methods
2015-02-08 09:22:39 -05:00
Louis Dionne
507aaa033d
[String] Split methods and refactor
2015-02-08 09:22:39 -05:00
Louis Dionne
3947f264c1
[Maybe] Split methods and refactor documentation.
2015-02-08 09:22:39 -05:00
Louis Dionne
245819eb71
[Either] Split methods and refactor documentation
2015-02-08 09:22:39 -05:00
Louis Dionne
9941656298
[Core] Add models to ease transition to split methods
2015-02-08 09:22:39 -05:00
Louis Dionne
74647cb3ce
Add independent methods to gradually split the type classes.
2015-02-08 09:22:38 -05:00
Louis Dionne
9dd3391130
[CMake] Fix typo: CMAKE_CURRENT_LIST_DIRECTORY => CMAKE_CURRENT_LIST_DIR
2015-02-06 18:01:40 -05:00
Louis Dionne
ee648c2bda
[Core] Fix issue with when_valid
2015-02-04 23:02:04 -05:00
Louis Dionne
6d6c9ce923
Remove unused minimal_list.hpp file
2015-01-17 15:45:39 -05:00
Louis Dionne
17100e774a
[Tuple] Add a more efficient concat
implementation
2015-01-13 16:19:45 -05:00
Louis Dionne
6f267bd37b
Add detail::generate_integer_sequence
.
2015-01-13 15:49:30 -05:00
Louis Dionne
e8b470aa18
Improve the MCD graph experiment
2015-01-12 15:56:18 -05:00
Louis Dionne
4654c6786a
Split instances for foreign types
2014-12-06 16:30:16 -05:00
Louis Dionne
0371952337
Make while_
part of Logical
2014-12-06 16:30:14 -05:00
Louis Dionne
21bdeb39ae
Only enable operators where needed with test::Seq.
2014-12-01 17:09:43 -05:00
Louis Dionne
14e3c34815
Add missing copyright in doc/CMakeLists.txt
2014-12-01 14:20:06 -05:00
Louis Dionne
99ff71dbef
Doxygen: remove warnings
2014-12-01 11:53:56 -05:00
Louis Dionne
f5c4de477f
Use true_type
/false_type
in std type traits.
2014-11-30 23:55:57 -05:00
Louis Dionne
8d4b34f6c2
Do not use variable templates for one
, zero
& al.
...
This is because using variable templates limits the objects to being
constexpr, or to not being constexpr (but then initializing the object
becomes an issue).
This is also a step towards being compilable by GCC 4.9, but that only
would not justify the change.
2014-11-30 20:42:29 -05:00
Louis Dionne
ec8e7446a0
CppCon Matrix: Implement the one
method
2014-11-30 11:38:48 -05:00
Louis Dionne
f0919d1761
Use List::repeat instead of handwritten one in the Matrix example.
2014-11-30 11:38:48 -05:00
Louis Dionne
51912d8661
Add detail::while_
and detail::until
.
2014-11-29 12:17:25 -05:00
Louis Dionne
a90385271e
Remove old benchmark code.
2014-11-26 20:27:38 -05:00