1. 08 Aug, 2016 1 commit
    • Fixed finding python libraries on windows in venv · b81c500c
      When run on windows in a venv, PYTHON_LIBRARY pointet to a non-existant
      location in the virtual environment directory.
      
      This has been fixed by testing if the path exists and, if not, trying
      an alternative path, relative to the PYTHON_INCLUDE_DIR.
      
      If the alternative path doesn't exit as well, an error will be raised.
      Christian Ewald committed
  2. 04 Aug, 2016 15 commits
  3. 03 Aug, 2016 4 commits
    • Merge pull request #312 from jagerman/eigen-ref-args · 39ff2d01
      Add support for Eigen::Ref<...> function arguments
      Wenzel Jakob committed
    • 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
  4. 02 Aug, 2016 4 commits
  5. 01 Aug, 2016 6 commits
  6. 30 Jul, 2016 1 commit
  7. 19 Jul, 2016 4 commits
  8. 18 Jul, 2016 5 commits
    • Merge pull request #289 from jagerman/example-renaming · 61352e50
      Rename examples files, as per #288
      Wenzel Jakob committed
    • Rename examples files, as per #288 · b3f3d79f
      This renames example files from `exampleN` to `example-description`.
      
      Specifically, the following renaming is applied:
      
      example1 -> example-methods-and-attributes
      example2 -> example-python-types
      example3 -> example-operator-overloading
      example4 -> example-constants-and-functions
      example5 -> example-callbacks (*)
      example6 -> example-sequence-and-iterators
      example7 -> example-buffers
      example8 -> example-custom-ref-counting
      example9 -> example-modules
      example10 -> example-numpy-vectorize
      example11 -> example-arg-keywords-and-defaults
      example12 -> example-virtual-functions
      example13 -> example-keep-alive
      example14 -> example-opaque-types
      example15 -> example-pickling
      example16 -> example-inheritance
      example17 -> example-stl-binders
      example18 -> example-eval
      example19 -> example-custom-exceptions
      
      * the inheritance parts of example5 are moved into example-inheritance
      (previously example16), and the remainder is left as example-callbacks.
      
      This commit also renames the internal variables ("Example1",
      "Example2", "Example4", etc.) into non-numeric names ("ExampleMandA",
      "ExamplePythonTypes", "ExampleWithEnum", etc.) to correspond to the
      file renaming.
      
      The order of tests is preserved, but this can easily be changed if
      there is some more natural ordering by updating the list in
      examples/CMakeLists.txt.
      Jason Rhinelander committed