1. 26 May, 2016 2 commits
    • Redesigned virtual call mechanism and user-facing syntax (breaking change!) · 86d825f3
      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.
      Wenzel Jakob committed
    • minor cleanups in pytypes.h · 60abf299
      Wenzel Jakob committed
  2. 25 May, 2016 2 commits
  3. 24 May, 2016 5 commits
  4. 21 May, 2016 3 commits
  5. 20 May, 2016 3 commits
  6. 19 May, 2016 3 commits
  7. 18 May, 2016 2 commits
  8. 17 May, 2016 2 commits
  9. 16 May, 2016 3 commits
  10. 15 May, 2016 13 commits
  11. 11 May, 2016 2 commits