1. 04 Aug, 2016 1 commit
    • Dean Moldovan's avatar
      Use generic arg names for functions without explicitly named arguments · ecced6c5
      Dean Moldovan authored
      Example signatures (old => new):
        foo(int) => foo(arg0: int)
        bar(Object, int) => bar(self: Object, arg0: int)
      
      The change makes the signatures uniform for named and unnamed arguments
      and it helps static analysis tools reconstruct function signatures from
      docstrings.
      
      This also tweaks the signature whitespace style to better conform to
      PEP 8 for annotations and default arguments:
        " : " => ": "
        " = " => "="
      ecced6c5
  2. 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
  3. 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
  4. 24 May, 2016 2 commits
  5. 17 May, 2016 1 commit
  6. 01 May, 2016 1 commit
  7. 30 Apr, 2016 1 commit
  8. 27 Apr, 2016 1 commit
  9. 21 Apr, 2016 1 commit
  10. 20 Apr, 2016 1 commit
  11. 11 Apr, 2016 1 commit
  12. 26 Mar, 2016 1 commit
  13. 10 Mar, 2016 1 commit