Skip to content
Snippets Groups Projects
  1. Aug 19, 2016
    • Sam Yates's avatar
      Address PR#83 review · 0ecd0238
      Sam Yates authored
      * Makes EXPECTS() fail handler a global, settable function pointer.
      * Fix `util::upto` for bidirectional iterators with begin==end.
      * Use `std::string` in error reporting with `either` in `partition_view`
        to correct incorrect default conversion in return value.
      * Correct return types for `util::range::operator[]` and `util::range::at()`
      * `transform_iterator` requires only iterator==sentinel test for correct sentinel
        behaviour.
      * Extend partition tests to cover:
        * partition views over short (length) sequences,
        * non-numeric partitions,
        * throw on validation check of non-monotonic sequence,
        * make_partition with short and long size sequences, short division containers.
      * Extend range tests to cover:
        * compatibility with `std::accumulate`,
        * correct constness of dereferences with respect to wrapped iterators,
        * proper type deduction for `make_range` over pointers.
      * Extend span tests to cover:
        * span creation from `std::pair`,
        * proper type promotion with heterogeneous bounds.
      0ecd0238
    • Sam Yates's avatar
      Ranges and views implementations. · e7acad69
      Sam Yates authored
      * Adds non-owning range class describing a half-open interval
        by a pair of iterators, or by a start iterator and sentinel.
        (Assumption is that these are bounded ranges; unbounded
        ranges are on the todo list.)
      * Adds spans and counting iterators, for iterating across
        intervals of integral types with a range-like interface.
      * Partition in-place creation functions and partition views
        over monotonically increasing sequences.
      * Two-field variant type implementation `util::either<A, B>`.
        (Used to provide an STL- and range for-loop accessible
        façade to sentinel-terminated ranges.)
      * Some simplifications of utitliy classes and tidying up
        of formatting.
      e7acad69
  2. Aug 18, 2016
  3. Aug 17, 2016
  4. Aug 16, 2016
  5. Aug 12, 2016
  6. Aug 11, 2016