1. 22 Jun, 2016 1 commit
  2. 16 Jun, 2016 1 commit
  3. 03 Jun, 2016 3 commits
  4. 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
  5. 24 May, 2016 1 commit
  6. 21 May, 2016 1 commit
  7. 19 May, 2016 2 commits
  8. 15 May, 2016 2 commits
  9. 05 May, 2016 3 commits
  10. 04 May, 2016 1 commit
    • Wenzel Jakob's avatar
      redesigned format_descriptor<> and npy_format_descriptor<> · 876eeab4
      Wenzel Jakob authored
      This somewhat heavyweight solution will avoid size_t/long long/long/int
      mismatches on various platforms once and for all. The previous template
      overloads could e.g. not handle size_t on Darwin.
      
      One gotcha: the 'format_descriptor<T>::value()' syntax changed to just
      'format_descriptor<T>::value'
      876eeab4
  11. 01 May, 2016 1 commit
  12. 30 Apr, 2016 1 commit
  13. 28 Apr, 2016 2 commits
  14. 26 Apr, 2016 1 commit
  15. 25 Apr, 2016 1 commit
  16. 22 Apr, 2016 1 commit
  17. 14 Apr, 2016 1 commit
  18. 13 Apr, 2016 5 commits
  19. 11 Apr, 2016 1 commit
  20. 07 Apr, 2016 1 commit
  21. 06 Apr, 2016 1 commit
  22. 15 Mar, 2016 1 commit
  23. 06 Mar, 2016 1 commit
  24. 03 Mar, 2016 1 commit
  25. 02 Feb, 2016 1 commit
  26. 18 Jan, 2016 1 commit
  27. 17 Jan, 2016 3 commits