Oh thanks, you made my day :) I'm used to niche projects, btw. Stackless Python was not very popular as well, but much harder...
On 24.09.17 15:59, Bob Hood wrote: > I think introspection is still a fairly uncommon area for most > programmers,even professional software engineers. Like many things Qt > does, it has leveraged introspection to great benefit, but there's no > requirement to actually know about or understand introspection in order > to use Qt(either via C++ or through PySide).Until it comes as a standard > in a mainstream language,like C++, I don't think you will see widespread > understanding or appreciation of its power. > > And if it's any consolation, I appreciate what you've done, Chris. :) > > > On 9/23/2017 9:55 PM, Christian Tismer wrote: >> Bob, you are right. The __signature__ object is a true object for >> introspection and you can directly use it to build a function >> call programmatically or find default arguments. Not as strings >> but as life objects. >> >> I think that is a pretty unique feature. I know only of Cython >> who creates signature objects from PyCFunctions. Therefore I expected >> more enthusiastic reactions, the feature was very hard to implement. >> And sure, the doc strings could be derived from it. >> >> Probably I should have pointed people at PEP 362 ff. >> >> Cheers -- Chris >> >> >> On 23.09.17 04:49, Bob Hood wrote: >>> I could be wrong, because I'm not familiar with the "__signature__" >>> attribute, but I believe it is intended to facilitate /introspection/ of >>> classes and methods. When Christian said "prints", I think he just >>> meant you get to see what the attribute holds, not that it should be >>> used as documentation. >>> >>> You could programmatically access the attributes data, and make run-time >>> use of it. You can't really do that with the help() output unless you >>> want go to great lengths to parse it. >>> >>> Sorry if I'm way off here. >>> >>> >>> On 9/22/2017 8:36 PM, Zhao Lee wrote: >>>> Sorry, I just feel the feature is just like what help() function do in >>>> Python >>>> https://docs.python.org/3/library/functions.html#help >>>> >>>> an example with PyQt5 >>>>>>> from PyQt5.QtWidgets import QApplication >>>>>>> help(QApplication.startTimer) >>>> Help on built-in function startTimer: >>>> >>>> startTimer(...) >>>> startTimer(self, int, timerType: Qt.TimerType = Qt.CoarseTimer) >>>> -> int >>>> >>>>>>> >>>> >>>> 在2017年09月22 16时42分, "Christian Tismer"<[email protected]>写道: >>>> >>>> >>>> Hi, >>>> >>>> please re-submit your reply in a readable way. >>>> I could read it locally, but the mailing list does not >>>> have a readable answer from you, just my copied text. >>>> >>>> Can you please come up with more than just "why not?"? >>>> I need a proposal how the help should look like. >>>> >>>> Thanks in advance -- Chris >>>> >>>> >>>> On 22.09.17 07:07, Zhao Lee wrote: >>>> > why not? >>>> >>>> help(PySide2.QtWidgets.QGraphicsAnchorLayout.addAnchors) >>>> >>>> help(PySide2.QtWidgets.QGraphicsAnchorLayout) >>>> > >>>> > >>>> > >>>> > 在2017年09月21 21时04分, "Christian Tismer"<[email protected] >>>> <mailto:[email protected]>>写道: >>>> > >>>> > >>>> > Hi friends, >>>> > >>>> > there is the new signature module for PySide2. >>>> > It adds the __signature__ attribute to all PySide2 >>>> > functions and constructors. >>>> > >>>> > Example usage: >>>> > >>>> > >>> >>>> PySide2.QtWidgets.QGraphicsAnchorLayout.addAnchors.__signature__ >>>> > >>> PySide2.QtWidgets.QGraphicsAnchorLayout.__signature__ >>>> > >>>> > will print all annotations, defaults and return values. >>>> > >>>> > The feature supports Python 2.7 and Python 3.4 and up. >>>> > See further info at >>>> > >>>> > https://bugreports.qt.io/browse/PYSIDE-510 >>>> > >>>> > >>>> >>>> https://github.com/pyside/pyside2-setup/blob/5.6/sources/shiboken2/libshiboken/signature.cpp >>>> >>>> > >>>> > >>>> >>>> https://github.com/pyside/pyside2-setup/blob/5.6/sources/shiboken2/libshiboken/signature.cpp >>>> >>>> > >>>> > Cheers -- Chris >>>> > >>>> > -- >>>> > Christian Tismer :^) [email protected] >>>> <mailto:[email protected]> >>>> > <mailto:[email protected] <mailto:[email protected]>> >>>> > Software Consulting : http://www.stackless.com/ >>>> > Karl-Liebknecht-Str. 121 : https://github.com/PySide >>>> > 14482 Potsdam : GPG key -> 0xFB7BEE0E >>>> > phone +49 173 24 18 776 fax +49 (30) 700143-0023 >>>> > >>>> > >>>> > >>>> > >>>> > >>>> > >>>> > >>>> >>>> >>>> -- >>>> Christian Tismer :^) [email protected] >>>> <mailto:[email protected]> >>>> Software Consulting : http://www.stackless.com/ >>>> Karl-Liebknecht-Str. 121 : https://github.com/PySide >>>> 14482 Potsdam : GPG key -> 0xFB7BEE0E >>>> phone +49 173 24 18 776 fax +49 (30) 700143-0023 >>>> >>>> >>>> >>>> >>>> >>>> >>>> _______________________________________________ PySide mailing list >>>> [email protected] >>>> http://lists.qt-project.org/mailman/listinfo/pyside >>> >>> >>> _______________________________________________ >>> PySide mailing list >>> [email protected] >>> http://lists.qt-project.org/mailman/listinfo/pyside >>> >> > -- Christian Tismer :^) [email protected] Software Consulting : http://www.stackless.com/ Karl-Liebknecht-Str. 121 : https://github.com/PySide 14482 Potsdam : GPG key -> 0xFB7BEE0E phone +49 173 24 18 776 fax +49 (30) 700143-0023
signature.asc
Description: OpenPGP digital signature
_______________________________________________ PySide mailing list [email protected] http://lists.qt-project.org/mailman/listinfo/pyside
