Commit Graph

17 Commits

Author SHA1 Message Date
Louis Dionne
d7efa66130 Remove unused variable warnings with recent Clang 2018-11-09 00:25:30 -08:00
Louis Dionne
c92b2d64e1 [tests] Add automatic unit tests for 'ap' 2017-12-01 18:00:49 -08:00
Louis Dionne
154ddb4f83 [tests] Add missing automatic test cases and get rid of custom tests for Fusion 2017-11-26 14:18:07 -08:00
Louis Dionne
a80a8222c0 [basic_tuple] Specialize length_impl
This should provide slightly better compile-times, and it removes an old TODO
2017-05-20 21:12:36 -06:00
Jason Rice
6d086796a3 [index_if] New index_if function
- Adds index_if
    - Rewrites detail::index_if to use recursive alias stuff
      optimized for tuple and basic_tuple
    - find_if now uses index_if for Iterables
    - at_key now uses index_if for Sequence
    - Removes duplicate code and unnecessary special case implementations
        - detail::advance_until
        - at_key::advance_until
        - tuple_tag implementation of find_if
    - Uses Foldable instead of Sequence for cases where length is known.
      (find_if had a specialization when Iterable and not Sequence)
    - Adds test.*.auto.index_if for Sequences
    - Adds test support/counter for testing infinite iterables
2017-04-07 16:19:52 -07:00
Louis Dionne
711e6de58a [basic_tuple] Use at_c instead of get_impl to access basic_tuples
This commit decouples the underlying representation of basic_tuple from many
utilities and containers in Hana. This will lead to better support for EBO and
cleaner code, however it might result in a slight compile-time pessimization
since there's one more function instantiation than using `get_impl` directly,
and we're adding 3 overloads to `at_c`.
2017-02-11 15:40:42 -08:00
Louis Dionne
a39d2fb90c [any_of] Fix a bug where we called the predicate once more than necessary
Also, add automatic unit tests for any_of, all_of and none_of. This commit
also makes it easier to add new automatic unit tests by documenting a small
shell script.

Commit triggered by http://stackoverflow.com/q/42012512/627587
2017-02-03 13:58:08 -08:00
Louis Dionne
9895803ede Bump copyright year to 2017 2017-01-07 14:14:18 -08:00
Louis Dionne
b8e28e4a74 [tests] Create an automatic test for for_each 2016-07-07 21:36:11 -07:00
Louis Dionne
9398b89210 [test/take_back] Rename misnamed automatic take_back test files
Also use smaller sequences to accommodate boost::tuple.
2016-02-29 10:24:26 -05:00
Louis Dionne
a757f7fb7c [basic_tuple] Provide a model for Iterable and Sequence
Also remove the ad-hoc model of Comparable, which is now obsolete.
2016-02-29 10:23:41 -05:00
Louis Dionne
df94a16210 [basic_tuple] Provide a model for Functor 2016-02-27 14:36:57 -05:00
Louis Dionne
3bea6c0ab0 [basic_tuple] Add a working copy constructor 2016-02-27 14:36:57 -05: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
a58ad3bdbc [basic_tuple] Rename BasicTuple to basic_tuple_tag 2015-09-02 21:59:05 -04:00
Louis Dionne
fd63f651d0 Add basic_tuple, a minimal version of the tuple 2015-08-08 13:16:02 +02:00