#17814: Make calling a cached method independent of source code inspection
-------------------------------------+-------------------------------------
Reporter: SimonKing | Owner:
Type: defect | Status: needs_review
Priority: major | Milestone: sage-6.6
Component: distribution | Resolution:
Keywords: | Merged in:
Authors: Simon King | Reviewers:
Report Upstream: N/A | Work issues:
Branch: | Commit:
u/SimonKing/make_calling_a_cached_method_independent_of_source_code_inspection|
a0b829dc10b4ccb00b99e073de8a1c0006aa1e51
Dependencies: | Stopgaps:
-------------------------------------+-------------------------------------
Comment (by nbruin):
I think this `embedsignature=True` is what we need:
{{{
sage: cython("""
....: import cython
....: cdef class A(object):
....: @cython.embedsignature(True)
....: def b(x,y=0): pass
....: """)
sage: print A.b.__doc__
A.b(x, y=0)
File: _home_nbruin__sage_temp_art_5476_tmp_LOYsNA_spyx_0.pyx (starting at
line 10)
}}}
i.e., if we ensure that we have `embedsignature=True` (probably globally
throughout the library), then we just need to change how cython docstrings
are used to accommodate for the fact that the first line is the signature.
Then `sage_argspec` can just look in the docstring to see if it can find a
signature there. No source inspection required anymore.
--
Ticket URL: <http://trac.sagemath.org/ticket/17814#comment:55>
Sage <http://www.sagemath.org>
Sage: Creating a Viable Open Source Alternative to Magma, Maple, Mathematica,
and MATLAB
--
You received this message because you are subscribed to the Google Groups
"sage-trac" group.
To unsubscribe from this group and stop receiving emails from it, send an email
to [email protected].
To post to this group, send email to [email protected].
Visit this group at http://groups.google.com/group/sage-trac.
For more options, visit https://groups.google.com/d/optout.