Skip to content
Snippets Groups Projects
  1. Dec 09, 2015
    • Elias Pipping's avatar
      Static size checks for FieldMatrix::rightmultiply · 0fa536e5
      Elias Pipping authored
      Previously, the following piece of code would compile and only
      only predictable fail at runtime with assertions enabled.
      
        Dune::FieldMatrix<double, 2, 3> A;
        // populate A
      
        Dune::FieldMatrix<double, 3, 2> B_bad;
        // populate B_bad
        A.rightmultiply(B_bad);
      
      It now fails to compile.
      0fa536e5
    • Elias Pipping's avatar
      Enable FieldMatrix::rightmultiply(DenseMatrix) · db1f4459
      Elias Pipping authored
      Previously, the following piece of code would compile but then enter a
      loop, typically leading to a segmentation fault
      
        Dune::FieldMatrix<double, 2, 3> A;
        // populate A
      
        Dune::DynamicMatrix<double> B_good(3, 3);
        // populate B_good
        A.rightmultiply(B_good);
      
      This would also happen for the following illegal extension of the above code
      
        Dune::FieldMatrix<double, 3, 2> B_bad;
        // populate B_bad
        A.rightmultiply(B_bad);
      
      The former now works as expected while the latter fails an assertion.
      db1f4459
  2. Nov 26, 2015
  3. Nov 25, 2015
  4. Nov 24, 2015
  5. Nov 23, 2015
  6. Nov 20, 2015
  7. 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
  8. 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
  9. Nov 17, 2015
  10. Nov 09, 2015
  11. Nov 05, 2015
Loading