#12895: Categories: adds support for SubcategoryMethods
-------------------------------------+--------------------------------------
       Reporter:  nthiery            |         Owner:  nthiery     
           Type:  enhancement        |        Status:  needs_review
       Priority:  major              |     Milestone:  sage-5.10   
      Component:  categories         |    Resolution:              
       Keywords:                     |   Work issues:              
Report Upstream:  N/A                |     Reviewers:              
        Authors:  Nicolas M. ThiƩry  |     Merged in:              
   Dependencies:  #11935, #12894     |      Stopgaps:              
-------------------------------------+--------------------------------------

Comment (by nthiery):

 Replying to [comment:8 SimonKing]:
 > I see that for `class Category_singleton(Category)`, you replace
 > {{{
 >     @lazy_class_attribute
 >     def __classcall__(object cls):
 > }}}
 > by
 > {{{
 >     @staticmethod
 >     def __classcall__(object cls):
 > }}}
 >
 > The point is that you do
 `obj.__class__._set_classcall(ConstantFunction(obj))`, so that the lazy
 class attribute is not needed, right? Just to make sure I understand what
 you did.

 That's right. If I remember well (that was one year ago), the tricky part
 is to have the classcall setting work properly both for the original class
 and its dynamic subclass. And having __classcall__ be a static method
 deviates a bit less from the standard UniqueRepresentation idiom.

-- 
Ticket URL: <http://trac.sagemath.org/sage_trac/ticket/12895#comment:13>
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?hl=en.
For more options, visit https://groups.google.com/groups/opt_out.


Reply via email to