| 
									
										
										
										
											2001-09-26 20:31:52 +00:00
										 |  |  | """Something just to look at via pydoc.""" | 
					
						
							|  |  |  | 
 | 
					
						
							|  |  |  | class A_classic: | 
					
						
							|  |  |  |     "A classic class." | 
					
						
							|  |  |  |     def A_method(self): | 
					
						
							|  |  |  |         "Method defined in A." | 
					
						
							|  |  |  |     def AB_method(self): | 
					
						
							|  |  |  |         "Method defined in A and B." | 
					
						
							|  |  |  |     def AC_method(self): | 
					
						
							|  |  |  |         "Method defined in A and C." | 
					
						
							|  |  |  |     def AD_method(self): | 
					
						
							|  |  |  |         "Method defined in A and D." | 
					
						
							|  |  |  |     def ABC_method(self): | 
					
						
							|  |  |  |         "Method defined in A, B and C." | 
					
						
							|  |  |  |     def ABD_method(self): | 
					
						
							|  |  |  |         "Method defined in A, B and D." | 
					
						
							|  |  |  |     def ACD_method(self): | 
					
						
							|  |  |  |         "Method defined in A, C and D." | 
					
						
							|  |  |  |     def ABCD_method(self): | 
					
						
							|  |  |  |         "Method defined in A, B, C and D." | 
					
						
							|  |  |  | 
 | 
					
						
							|  |  |  | 
 | 
					
						
							|  |  |  | class B_classic(A_classic): | 
					
						
							|  |  |  |     "A classic class, derived from A_classic." | 
					
						
							|  |  |  |     def AB_method(self): | 
					
						
							|  |  |  |         "Method defined in A and B." | 
					
						
							|  |  |  |     def ABC_method(self): | 
					
						
							|  |  |  |         "Method defined in A, B and C." | 
					
						
							|  |  |  |     def ABD_method(self): | 
					
						
							|  |  |  |         "Method defined in A, B and D." | 
					
						
							|  |  |  |     def ABCD_method(self): | 
					
						
							|  |  |  |         "Method defined in A, B, C and D." | 
					
						
							|  |  |  |     def B_method(self): | 
					
						
							|  |  |  |         "Method defined in B." | 
					
						
							|  |  |  |     def BC_method(self): | 
					
						
							|  |  |  |         "Method defined in B and C." | 
					
						
							|  |  |  |     def BD_method(self): | 
					
						
							|  |  |  |         "Method defined in B and D." | 
					
						
							|  |  |  |     def BCD_method(self): | 
					
						
							|  |  |  |         "Method defined in B, C and D." | 
					
						
							|  |  |  | 
 | 
					
						
							|  |  |  | class C_classic(A_classic): | 
					
						
							|  |  |  |     "A classic class, derived from A_classic." | 
					
						
							|  |  |  |     def AC_method(self): | 
					
						
							|  |  |  |         "Method defined in A and C." | 
					
						
							|  |  |  |     def ABC_method(self): | 
					
						
							|  |  |  |         "Method defined in A, B and C." | 
					
						
							|  |  |  |     def ACD_method(self): | 
					
						
							|  |  |  |         "Method defined in A, C and D." | 
					
						
							|  |  |  |     def ABCD_method(self): | 
					
						
							|  |  |  |         "Method defined in A, B, C and D." | 
					
						
							|  |  |  |     def BC_method(self): | 
					
						
							|  |  |  |         "Method defined in B and C." | 
					
						
							|  |  |  |     def BCD_method(self): | 
					
						
							|  |  |  |         "Method defined in B, C and D." | 
					
						
							|  |  |  |     def C_method(self): | 
					
						
							|  |  |  |         "Method defined in C." | 
					
						
							|  |  |  |     def CD_method(self): | 
					
						
							|  |  |  |         "Method defined in C and D." | 
					
						
							|  |  |  | 
 | 
					
						
							|  |  |  | class D_classic(B_classic, C_classic): | 
					
						
							|  |  |  |     "A classic class, derived from B_classic and C_classic." | 
					
						
							|  |  |  |     def AD_method(self): | 
					
						
							|  |  |  |         "Method defined in A and D." | 
					
						
							|  |  |  |     def ABD_method(self): | 
					
						
							|  |  |  |         "Method defined in A, B and D." | 
					
						
							|  |  |  |     def ACD_method(self): | 
					
						
							|  |  |  |         "Method defined in A, C and D." | 
					
						
							|  |  |  |     def ABCD_method(self): | 
					
						
							|  |  |  |         "Method defined in A, B, C and D." | 
					
						
							|  |  |  |     def BD_method(self): | 
					
						
							|  |  |  |         "Method defined in B and D." | 
					
						
							|  |  |  |     def BCD_method(self): | 
					
						
							|  |  |  |         "Method defined in B, C and D." | 
					
						
							|  |  |  |     def CD_method(self): | 
					
						
							|  |  |  |         "Method defined in C and D." | 
					
						
							|  |  |  |     def D_method(self): | 
					
						
							|  |  |  |         "Method defined in D." | 
					
						
							|  |  |  | 
 | 
					
						
							|  |  |  | 
 | 
					
						
							| 
									
										
										
										
											2001-10-15 22:59:59 +00:00
										 |  |  | class A_new(object): | 
					
						
							|  |  |  |     "A new-style class." | 
					
						
							| 
									
										
										
										
											2001-09-26 20:31:52 +00:00
										 |  |  | 
 | 
					
						
							|  |  |  |     def A_method(self): | 
					
						
							|  |  |  |         "Method defined in A." | 
					
						
							|  |  |  |     def AB_method(self): | 
					
						
							|  |  |  |         "Method defined in A and B." | 
					
						
							|  |  |  |     def AC_method(self): | 
					
						
							|  |  |  |         "Method defined in A and C." | 
					
						
							|  |  |  |     def AD_method(self): | 
					
						
							|  |  |  |         "Method defined in A and D." | 
					
						
							|  |  |  |     def ABC_method(self): | 
					
						
							|  |  |  |         "Method defined in A, B and C." | 
					
						
							|  |  |  |     def ABD_method(self): | 
					
						
							|  |  |  |         "Method defined in A, B and D." | 
					
						
							|  |  |  |     def ACD_method(self): | 
					
						
							|  |  |  |         "Method defined in A, C and D." | 
					
						
							|  |  |  |     def ABCD_method(self): | 
					
						
							|  |  |  |         "Method defined in A, B, C and D." | 
					
						
							|  |  |  | 
 | 
					
						
							|  |  |  |     def A_classmethod(cls, x): | 
					
						
							|  |  |  |         "A class method defined in A." | 
					
						
							|  |  |  |     A_classmethod = classmethod(A_classmethod) | 
					
						
							|  |  |  | 
 | 
					
						
							|  |  |  |     def A_staticmethod(): | 
					
						
							|  |  |  |         "A static method defined in A." | 
					
						
							|  |  |  |     A_staticmethod = staticmethod(A_staticmethod) | 
					
						
							|  |  |  | 
 | 
					
						
							|  |  |  |     def _getx(self): | 
					
						
							|  |  |  |         "A property getter function." | 
					
						
							|  |  |  |     def _setx(self, value): | 
					
						
							|  |  |  |         "A property setter function." | 
					
						
							|  |  |  |     def _delx(self): | 
					
						
							|  |  |  |         "A property deleter function." | 
					
						
							|  |  |  |     A_property = property(fdel=_delx, fget=_getx, fset=_setx, | 
					
						
							|  |  |  |                           doc="A sample property defined in A.") | 
					
						
							|  |  |  | 
 | 
					
						
							|  |  |  |     A_int_alias = int | 
					
						
							|  |  |  | 
 | 
					
						
							| 
									
										
										
										
											2001-10-15 22:59:59 +00:00
										 |  |  | class B_new(A_new): | 
					
						
							|  |  |  |     "A new-style class, derived from A_new." | 
					
						
							| 
									
										
										
										
											2001-09-26 20:31:52 +00:00
										 |  |  | 
 | 
					
						
							|  |  |  |     def AB_method(self): | 
					
						
							|  |  |  |         "Method defined in A and B." | 
					
						
							|  |  |  |     def ABC_method(self): | 
					
						
							|  |  |  |         "Method defined in A, B and C." | 
					
						
							|  |  |  |     def ABD_method(self): | 
					
						
							|  |  |  |         "Method defined in A, B and D." | 
					
						
							|  |  |  |     def ABCD_method(self): | 
					
						
							|  |  |  |         "Method defined in A, B, C and D." | 
					
						
							|  |  |  |     def B_method(self): | 
					
						
							|  |  |  |         "Method defined in B." | 
					
						
							|  |  |  |     def BC_method(self): | 
					
						
							|  |  |  |         "Method defined in B and C." | 
					
						
							|  |  |  |     def BD_method(self): | 
					
						
							|  |  |  |         "Method defined in B and D." | 
					
						
							|  |  |  |     def BCD_method(self): | 
					
						
							|  |  |  |         "Method defined in B, C and D." | 
					
						
							|  |  |  | 
 | 
					
						
							| 
									
										
										
										
											2001-10-15 22:59:59 +00:00
										 |  |  | class C_new(A_new): | 
					
						
							|  |  |  |     "A new-style class, derived from A_new." | 
					
						
							| 
									
										
										
										
											2001-09-26 20:31:52 +00:00
										 |  |  | 
 | 
					
						
							|  |  |  |     def AC_method(self): | 
					
						
							|  |  |  |         "Method defined in A and C." | 
					
						
							|  |  |  |     def ABC_method(self): | 
					
						
							|  |  |  |         "Method defined in A, B and C." | 
					
						
							|  |  |  |     def ACD_method(self): | 
					
						
							|  |  |  |         "Method defined in A, C and D." | 
					
						
							|  |  |  |     def ABCD_method(self): | 
					
						
							|  |  |  |         "Method defined in A, B, C and D." | 
					
						
							|  |  |  |     def BC_method(self): | 
					
						
							|  |  |  |         "Method defined in B and C." | 
					
						
							|  |  |  |     def BCD_method(self): | 
					
						
							|  |  |  |         "Method defined in B, C and D." | 
					
						
							|  |  |  |     def C_method(self): | 
					
						
							|  |  |  |         "Method defined in C." | 
					
						
							|  |  |  |     def CD_method(self): | 
					
						
							|  |  |  |         "Method defined in C and D." | 
					
						
							|  |  |  | 
 | 
					
						
							| 
									
										
										
										
											2001-10-15 22:59:59 +00:00
										 |  |  | class D_new(B_new, C_new): | 
					
						
							|  |  |  |     """A new-style class, derived from B_new and C_new.
 | 
					
						
							| 
									
										
										
										
											2001-09-26 20:31:52 +00:00
										 |  |  |     """
 | 
					
						
							|  |  |  | 
 | 
					
						
							|  |  |  |     def AD_method(self): | 
					
						
							|  |  |  |         "Method defined in A and D." | 
					
						
							|  |  |  |     def ABD_method(self): | 
					
						
							|  |  |  |         "Method defined in A, B and D." | 
					
						
							|  |  |  |     def ACD_method(self): | 
					
						
							|  |  |  |         "Method defined in A, C and D." | 
					
						
							|  |  |  |     def ABCD_method(self): | 
					
						
							|  |  |  |         "Method defined in A, B, C and D." | 
					
						
							|  |  |  |     def BD_method(self): | 
					
						
							|  |  |  |         "Method defined in B and D." | 
					
						
							|  |  |  |     def BCD_method(self): | 
					
						
							|  |  |  |         "Method defined in B, C and D." | 
					
						
							|  |  |  |     def CD_method(self): | 
					
						
							|  |  |  |         "Method defined in C and D." | 
					
						
							|  |  |  |     def D_method(self): | 
					
						
							|  |  |  |         "Method defined in D." | 
					
						
							| 
									
										
										
										
											2001-10-18 19:56:17 +00:00
										 |  |  | 
 | 
					
						
							|  |  |  | class FunkyProperties(object): | 
					
						
							|  |  |  |     """From SF bug 472347, by Roeland Rengelink.
 | 
					
						
							|  |  |  | 
 | 
					
						
							|  |  |  |     Property getters etc may not be vanilla functions or methods, | 
					
						
							|  |  |  |     and this used to make GUI pydoc blow up. | 
					
						
							|  |  |  |     """
 | 
					
						
							|  |  |  | 
 | 
					
						
							|  |  |  |     def __init__(self): | 
					
						
							|  |  |  |         self.desc = {'x':0} | 
					
						
							|  |  |  | 
 | 
					
						
							|  |  |  |     class get_desc: | 
					
						
							|  |  |  |         def __init__(self, attr): | 
					
						
							|  |  |  |             self.attr = attr | 
					
						
							|  |  |  |         def __call__(self, inst): | 
					
						
							|  |  |  |             print 'Get called', self, inst | 
					
						
							|  |  |  |             return inst.desc[self.attr] | 
					
						
							|  |  |  |     class set_desc: | 
					
						
							|  |  |  |         def __init__(self, attr): | 
					
						
							|  |  |  |             self.attr = attr | 
					
						
							|  |  |  |         def __call__(self, inst, val): | 
					
						
							|  |  |  |             print 'Set called', self, inst, val | 
					
						
							|  |  |  |             inst.desc[self.attr] = val | 
					
						
							|  |  |  |     class del_desc: | 
					
						
							|  |  |  |         def __init__(self, attr): | 
					
						
							|  |  |  |             self.attr = attr | 
					
						
							|  |  |  |         def __call__(self, inst): | 
					
						
							|  |  |  |             print 'Del called', self, inst | 
					
						
							|  |  |  |             del inst.desc[self.attr] | 
					
						
							|  |  |  | 
 | 
					
						
							|  |  |  |     x = property(get_desc('x'), set_desc('x'), del_desc('x'), 'prop x') |