Skip to content
Snippets Groups Projects
  1. Aug 24, 2016
  2. Aug 23, 2016
    • Benjamin Cumming's avatar
      Support for multi-threaded sort · 4376306e
      Benjamin Cumming authored
      * `nest::mc::threading::sort` is analogous to `std::sort`
          * when using TBB the `tbb::parallel_sort` is used
          * otherwise `std::sort` is used
      * used to parallelise connection construction during setup
          * now all initialization and simulation is multi-threaded
      * added a unit test
      4376306e
    • Benjamin Cumming's avatar
      fix issues with Intel Compiler and optimized builds · 99119e5f
      Benjamin Cumming authored
      * replace a call to `std::iota` with a for loop because the Intel
      compiler was optimizing out the `std::iota` call in a unit test.
      * add uniform syntax for converting pointer+size and ArrayView+size
      into an ArrayView to provide uniform method for accessing ranges
      inside mechanisms with/without optimizations.
      99119e5f
  3. Aug 22, 2016
  4. 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
  5. Aug 18, 2016
  6. Aug 17, 2016
  7. Aug 16, 2016