Skip to content
Snippets Groups Projects
  1. Nov 26, 2015
  2. Nov 25, 2015
  3. Nov 23, 2015
  4. Nov 20, 2015
  5. Nov 19, 2015
    • Carsten Gräser's avatar
      [concept][test] Add test for concept checking facility · b6f9a597
      Carsten Gräser authored
      This also adds two test utilities from dune-functions
      that are both used in this test.
      
      * TestSuite: A helper class to organize checks in tests
        in a unified way and more readable way.
      * CollectorStream: A simple stream that allows to collect
        data and forward it to its creator using a callback.
        Used by testsuite.hh
      
      Since can also be used for tests in other modules they
      are installed in dune/common/test. However, CollectorStream
      is not strictly related to tests and may also be moved directly
      to dune/common/.
      b6f9a597
    • Carsten Gräser's avatar
      Adjust include to moved PriorityTag · b42d77ab
      Carsten Gräser authored
      b42d77ab
    • Carsten Gräser's avatar
      [cleanup] Move PriorityTag to typeutilities.hh · 7a4dbe08
      Carsten Gräser authored
      This removed the recently added prioritytag.hh
      header again. Having a separate header for each
      of these trivial helpers will only clutter the
      directory and make people lookup the correct
      header more often.
      7a4dbe08
    • Carsten Gräser's avatar
      Add typeutilities · a247658f
      Carsten Gräser authored
      This header should be used to collect all utilities for
      type computations, constraining overloads, and similar
      purposes, that are not type-traits.
      a247658f
  6. Nov 18, 2015
    • Carsten Gräser's avatar
      6dcef08d
    • Carsten Gräser's avatar
      Install new header concept.hh · f2569b50
      Carsten Gräser authored
      f2569b50
    • Carsten Gräser's avatar
      [concept] Add concept check utilities · 4c4699e2
      Carsten Gräser authored
      The main feature of this header is the constexpr function
      models(). The result of
      
        models<C, T1, ..., TN>()
      
      indicated if the concept C is modeled by the collection
      (T1, ..., TN) of types. A concept is a list of valid
      expressions that a type must support. Concepts can refine
      other concepts to inherit all requirements from those
      base concepts.
      
      Besides the concept check function itself, the header contains
      some helper functions of the form require requireFoo for additional
      checks. The purpose of those functions is to transform a non-satisfied
      condition Foo to a substitution failure, such that the corresponding
      expression is not valid. E.g.,
      
        requireConvertible<R>(t.f())
      
      is not valid unless the result of t.f() is convertible to R.
      4c4699e2
  7. Nov 17, 2015
  8. Nov 09, 2015
  9. Nov 05, 2015
    • Carsten Gräser's avatar
      Mention new header priorotytag.hh · d939f910
      Carsten Gräser authored
      d939f910
    • Carsten Gräser's avatar
      [utility] Add PriorityTag class · c8a17dc5
      Carsten Gräser authored
      This allows to give priorities to otherwise ambiguous
      overloads. It's main use is to make multiple overloads
      work, when only some are ruled out via SFINAE. This is
      e.g. used in the concepts check that I'll move to
      dune-common soon.
      
      The implemention is trivial but makes such applications
      more readable and idiomatic compared to other approaches
      where, e.g., null pointers are passed to overloads
      have T* and void* dummy arguments.
      
      Due to it's simplicity a separate header may not be justified,
      but none of the existing seems to fit.
      c8a17dc5
  10. Oct 31, 2015
  11. Oct 30, 2015
  12. Oct 25, 2015
Loading