Louis Dionne
9895803ede
Bump copyright year to 2017
2017-01-07 14:14:18 -08:00
Louis Dionne
c97f86e17b
[tests] Remove occurences of using namespace boost::hana
2016-10-23 11:59:28 -07:00
Louis Dionne
f06b35db8d
[tests] Remove includes of the master header
2016-09-18 16:16:25 -07:00
Louis Dionne
28f5a6bf74
[tests] Clean up some tests using ::Tracked
2016-09-18 12:12:55 -07:00
Jason Rice
a5989ca190
[overload_linearly] test unary function call
2016-05-29 09:53:06 -07:00
Louis Dionne
23c3edc93b
[NFC] Un-Doxygenize comments in non-header files
2016-02-04 11:07:41 -05:00
Louis Dionne
c41a5cb6be
Update copyright notices for 2016
2016-01-01 14:54:06 -05:00
Louis Dionne
df7bdf5c69
[functional/apply] Behave like C++17's std::invoke
2015-09-22 10:40:23 -07:00
Louis Dionne
1d7b720c95
[Enumerable] Remove that concept entirely.
...
Enumerable was not being used inside the library, and its usefulness
was questionable due to the lack of upper/lower bounds.
Closes #23
2015-09-12 17:59:58 -04:00
Louis Dionne
37dc041af5
[Functional][lazy] Use basic_tuple instead of closure<>
...
Also, modularize and refactor some unit tests for Functional utilities.
2015-09-07 16:31:23 -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
6d80a308da
[Doc] Document hana::tuple instead of hana::Tuple
...
Also, document the member functions of `hana::tuple` and add an example.
Fixes #163
2015-08-30 17:07:18 -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
a5e5ee90bd
Remove most leading underscores from names in the hana:: namespace
...
Fixes #130
2015-08-08 11:24:17 +02:00
Louis Dionne
aea2196cf7
[iterate] Workaround hitting recursive instantiation limit with libstdc++
2015-07-26 17:25:54 +02:00
Louis Dionne
8a0ddb0fa7
[Closure] Reimplement the closure to be almost standards-conforming
...
Also, use that closure to implement basically all containers.
The new closure compresses empty types.
Fixes #123
Fixes #93
Fixes #89
2015-07-26 12:42:20 +02:00
Louis Dionne
d3b7cb2c85
Modularize the headers
...
This (large) commit introduces the following changes:
- Each algorithm lives in its own header
- The concepts are defined in the concept/ subdirectory. They define the
`models` metafunction, some explicit default implementations (like
Applicative::transform_impl), and they include all the algorithms
related to that concept.
- Removed the `until` method from Logical
- Removed the `drop_until` method from Iterable
- [minor] Added the detail::nested_to utility
Closes #160
2015-07-25 16:20:47 +02:00
Louis Dionne
0660af6a8f
[GCC] Initial port to GCC
...
- Fix ambiguous specialization in core/datatype
- [Config] Turn #errors into #warnings
- Qualify recursive calls to `apply` to make sure the right function is selected
- Remove usages of when_valid to workaround ambiguous specializations
- Use multiline comments to remove some GCC warnings with LaTeX's double backslash
- Specialize operators::of in the boost::hana::operators namespace
- Manually perform more conversions in constexpr-context
- Workaround the lack of support for constexpr-but-non-const member functions
- Disambiguate unqualified uses of size_t with hana::size_t and ::size_t
2015-05-20 16:56:34 -04:00
Louis Dionne
3e0838b1e2
[Functional] Move reverse_partial from detail to functional
2015-05-04 14:01:45 -04:00
Louis Dionne
125fd45bfd
[Functional] Add the overload_linearly utility
2015-04-06 14:11:42 -04:00
Louis Dionne
637c5270ab
[Functional] Add hana::capture
2015-03-28 22:22:13 -04:00
Louis Dionne
2ecedc140c
[Functional] Add the iterate
combinator
2015-03-25 12:26:04 -04:00
Louis Dionne
5ab6925364
[Test] Fix some tests that fail on Travis and remove warnings
2015-03-15 00:18:31 -04:00
Louis Dionne
065b910128
Update copyright year.
2015-03-03 14:16:50 -05:00
Louis Dionne
aa6eac6c3d
[Config] Move BOOST_HANA_CONSTEXPR_LAMBDA to config.hpp
2015-02-25 10:20:12 -05:00
Louis Dionne
6d8e5b61a0
[Functional/Placeholder] Refactor test and add a missing include
2015-02-24 14:03:14 -05:00
Louis Dionne
f0c66b31f8
Remove outdated core/ tests and reorganize tests
2015-02-20 11:05:44 -05:00
Louis Dionne
17d2ce584c
[Integral] Rename to IntegralConstant and improve the API
2015-02-10 20:03:49 -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
50dc7506ff
[Functional] Make the placeholder-based operators SFINAE-friendly
2015-02-08 10:51:00 -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
647ad436b0
Reorganize the unit tests and increase the overall coverage.
2014-11-04 08:54:58 -05:00
Louis Dionne
f6af15fe31
Update fix's test
2014-10-28 14:22:59 -04:00
Louis Dionne
539ed83248
Fix a dangling reference bug in functional/id.
2014-09-29 11:15:00 -04:00
Louis Dionne
307d3d0ec8
Huge reorganization and refactoring.
...
- Split type class instances into separate files
- Instances provided automatically by a type class are actually MCDs
- Test each instance in a single file, not one file per method
- Refactor the operator system to fix the ADL-related bug.
2014-08-18 19:26:29 -04:00
Louis Dionne
f2de95a841
Use detail::injection
instead of a std::tuple
in the tests
2014-08-16 14:25:57 -04:00
Louis Dionne
1d031b4556
Functional: add infix
and use it to implement on
2014-08-05 22:49:18 -04:00
Louis Dionne
d132db0ebf
Use finer grained assertions acknowledging Constants
2014-08-05 10:37:54 -04:00
Louis Dionne
c6f0420145
Functional: pimp the documentation
2014-07-30 15:21:39 -04:00
Louis Dionne
d0a83b8d30
Functional: Allow 2 arguments or more in compose
2014-07-21 14:57:19 -04:00
Louis Dionne
bfc71e548c
Functional: make sure curry<N> is idempotent.
2014-07-14 20:45:14 -04:00
Louis Dionne
6cfe3ac1b9
Functional: add function call and array subscript to placeholders
2014-06-19 11:56:24 -04:00
Louis Dionne
874c28eade
Functional: refactor to reduce coupling
2014-06-18 10:06:19 -04:00
Louis Dionne
a1ab4fab6b
Functional: add fbind
2014-06-04 11:54:09 -04:00
Louis Dionne
178b25476d
Functional: add arg<n>
2014-06-04 11:29:08 -04:00
Louis Dionne
806981bbcf
Functional: remove argwise, add on and lockstep
2014-06-04 11:29:00 -04:00
Louis Dionne
91689fe4f0
Make the header comment and license uniform.
2014-06-03 11:46:24 -04:00
Louis Dionne
e77dab7c55
Generalize curry.
2014-06-01 10:03:07 -04:00
Louis Dionne
cec5d4edf8
Add unpack and remove Functor from Range.
2014-05-31 14:55:11 -04:00