1. 17 Jul, 2016 1 commit
    • Jason Rhinelander's avatar
      Fix #283: don't print first arg of constructor · 4e45e180
      Jason Rhinelander authored
      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.
      4e45e180
  2. 12 Jul, 2016 1 commit
  3. 11 Jul, 2016 1 commit
  4. 10 Jul, 2016 2 commits
  5. 09 Jul, 2016 1 commit
    • Jason Rhinelander's avatar
      Tests can skip by exiting with 99; fix eigen test failure · 7de9f6c7
      Jason Rhinelander authored
      This allows (and changes the current examples) to exit with status 99 to
      skip a test instead of outputting a special string ("NumPy missing").
      
      This also fixes the eigen test, which currently fails when eigen
      headers are available but NumPy is not, to skip instead of failing when
      NumPy isn't available.
      7de9f6c7
  6. 08 Jul, 2016 2 commits
  7. 06 Jul, 2016 1 commit
  8. 05 Jul, 2016 7 commits
  9. 01 Jul, 2016 1 commit
  10. 16 Jun, 2016 1 commit
  11. 15 Jun, 2016 1 commit
  12. 03 Jun, 2016 1 commit
  13. 01 Jun, 2016 3 commits
  14. 31 May, 2016 1 commit
  15. 30 May, 2016 1 commit
  16. 29 May, 2016 2 commits
  17. 28 May, 2016 1 commit
  18. 27 May, 2016 1 commit
  19. 26 May, 2016 1 commit
    • Wenzel Jakob's avatar
      Redesigned virtual call mechanism and user-facing syntax (breaking change!) · 86d825f3
      Wenzel Jakob authored
      Sergey Lyskov pointed out that the trampoline mechanism used to override
      virtual methods from within Python caused unnecessary overheads when
      instantiating the original (i.e. non-extended) class.
      
      This commit removes this inefficiency, but some syntax changes were
      needed to achieve this. Projects using this features will need to make a
      few changes:
      
      In particular, the example below shows the old syntax to instantiate a
      class with a trampoline:
      
      class_<TrampolineClass>("MyClass")
          .alias<MyClass>()
          ....
      
      This is what should be used now:
      
      class_<MyClass, std::unique_ptr<MyClass, TrampolineClass>("MyClass")
          ....
      
      Importantly, the trampoline class is now specified as the *third*
      argument to the class_ template, and the alias<..>() call is gone. The
      second argument with the unique pointer is simply the default holder
      type used by pybind11.
      86d825f3
  20. 25 May, 2016 1 commit
    • Yung-Yu Chen's avatar
      pybind11::args should have been derived from tuple · 114bfeb7
      Yung-Yu Chen authored
      args was derived from list, but cpp_function::dispatcher sends a tuple to it->impl (line #346 and #392 in pybind11.h).  As a result args::size() and args::operator[] don't work at all.  On my mac args::size() returns -1.  Making args a subclass of tuple fixes it.
      114bfeb7
  21. 24 May, 2016 2 commits
  22. 22 May, 2016 1 commit
  23. 20 May, 2016 1 commit
  24. 19 May, 2016 1 commit
  25. 17 May, 2016 1 commit
  26. 16 May, 2016 1 commit
  27. 15 May, 2016 2 commits