1. 02 Aug, 2016 1 commit
  2. 30 Jul, 2016 1 commit
  3. 19 Jul, 2016 1 commit
  4. 18 Jul, 2016 1 commit
    • Jason Rhinelander's avatar
      Rename examples files, as per #288 · b3f3d79f
      Jason Rhinelander authored
      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.
      b3f3d79f
  5. 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
  6. 12 Jul, 2016 1 commit
  7. 11 Jul, 2016 1 commit
  8. 10 Jul, 2016 2 commits
  9. 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
  10. 08 Jul, 2016 2 commits
  11. 06 Jul, 2016 1 commit
  12. 05 Jul, 2016 7 commits
  13. 01 Jul, 2016 1 commit
  14. 16 Jun, 2016 1 commit
  15. 15 Jun, 2016 1 commit
  16. 03 Jun, 2016 1 commit
  17. 01 Jun, 2016 3 commits
  18. 31 May, 2016 1 commit
  19. 30 May, 2016 1 commit
  20. 29 May, 2016 2 commits
  21. 28 May, 2016 1 commit
  22. 27 May, 2016 1 commit
  23. 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
  24. 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
  25. 24 May, 2016 2 commits
  26. 22 May, 2016 1 commit
  27. 20 May, 2016 1 commit
  28. 19 May, 2016 1 commit