#15718: Implement the __init_extra__ protocol of categories for Cython classes.
------------------------------+------------------------
       Reporter:  nthiery     |        Owner:
           Type:  defect      |       Status:  new
       Priority:  major       |    Milestone:  sage-6.1
      Component:  categories  |   Resolution:
       Keywords:              |    Merged in:
        Authors:              |    Reviewers:
Report Upstream:  N/A         |  Work issues:
         Branch:              |       Commit:
   Dependencies:              |     Stopgaps:
------------------------------+------------------------

Comment (by SimonKing):

 It would probably be rather easy:

 Currently, we only look into the mro of the class; if the class is a
 Python class, then it is a subclass of the category's parent class (since
 the quest for `__init_extra__` takes place after category initialisation).
 But in the case of Cython class, we simply need to look explicitly into
 ''both'' the class' mro and the category's parent class' mro.

 It would detect a lot of Cython classes in which the call to
 `Parent.__init__` happens too early for `__init_extra__` to work... But
 these would be exactly the classes that currently do not allow Python
 subclasses.

--
Ticket URL: <http://trac.sagemath.org/ticket/15718#comment:1>
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/groups/opt_out.

Reply via email to