1. 03 Aug, 2016 3 commits
    • Add support for Eigen::Ref<...> function arguments · 5fd5074a
      Eigen::Ref is a common way to pass eigen dense types without needing a
      template, e.g. the single definition `void
      func(Eigen::Ref<Eigen::MatrixXd> x)` can be called with any double
      matrix-like object.
      
      The current pybind11 eigen support fails with internal errors if
      attempting to bind a function with an Eigen::Ref<...> argument because
      Eigen::Ref<...> satisfies the "is_eigen_dense" requirement, but can't
      compile if actually used: Eigen::Ref<...> itself is not default
      constructible, and so the argument std::tuple containing an
      Eigen::Ref<...> isn't constructible, which results in compilation
      failure.
      
      This commit adds support for Eigen::Ref<...> by giving it its own
      type_caster implementation which consists of an internal type_caster of
      the referenced type, load/cast methods that dispatch to the internal
      type_caster, and a unique_ptr to an Eigen::Ref<> instance that gets
      set during load().
      
      There is, of course, no performance advantage for pybind11-using code of
      using Eigen::Ref<...>--we are allocating a matrix of the derived type
      when loading it--but this has the advantage of allowing pybind11 to bind
      transparently to C++ methods taking Eigen::Refs.
      Jason Rhinelander committed
    • Merge pull request #311 from lsst-dm/master · 7f9603fe
      Fix zero valued enum comparison error
      Wenzel Jakob committed
  2. 02 Aug, 2016 4 commits
  3. 01 Aug, 2016 6 commits
  4. 30 Jul, 2016 1 commit
  5. 19 Jul, 2016 4 commits
  6. 18 Jul, 2016 7 commits
  7. 17 Jul, 2016 1 commit
    • Fix #283: don't print first arg of constructor · 4e45e180
      This changes the exception error message of a bad-arguments error to
      suppress the constructor argument when the failure is a constructor.
      
      This changes both the "Invoked with: " output to omit the object
      instances, and rewrites the constructor signature to make it look
      like a constructor (changing the first argument to the object name, and
      removing the ' -> NoneType' return type.
      Jason Rhinelander committed
  8. 12 Jul, 2016 5 commits
  9. 11 Jul, 2016 4 commits
  10. 10 Jul, 2016 3 commits
  11. 09 Jul, 2016 2 commits