mirror of
				https://github.com/python/cpython.git
				synced 2025-11-03 23:21:29 +00:00 
			
		
		
		
	gh-122129: Improve support of method descriptors and wrappers in the help title (GH-122157)
This commit is contained in:
		
							parent
							
								
									a15feded71
								
							
						
					
					
						commit
						4606eff0aa
					
				
					 3 changed files with 18 additions and 3 deletions
				
			
		| 
						 | 
					@ -1682,6 +1682,13 @@ def describe(thing):
 | 
				
			||||||
        return 'function ' + thing.__name__
 | 
					        return 'function ' + thing.__name__
 | 
				
			||||||
    if inspect.ismethod(thing):
 | 
					    if inspect.ismethod(thing):
 | 
				
			||||||
        return 'method ' + thing.__name__
 | 
					        return 'method ' + thing.__name__
 | 
				
			||||||
 | 
					    if inspect.ismethodwrapper(thing):
 | 
				
			||||||
 | 
					        return 'method wrapper ' + thing.__name__
 | 
				
			||||||
 | 
					    if inspect.ismethoddescriptor(thing):
 | 
				
			||||||
 | 
					        try:
 | 
				
			||||||
 | 
					            return 'method descriptor ' + thing.__name__
 | 
				
			||||||
 | 
					        except AttributeError:
 | 
				
			||||||
 | 
					            pass
 | 
				
			||||||
    return type(thing).__name__
 | 
					    return type(thing).__name__
 | 
				
			||||||
 | 
					
 | 
				
			||||||
def locate(path, forceload=0):
 | 
					def locate(path, forceload=0):
 | 
				
			||||||
| 
						 | 
					
 | 
				
			||||||
| 
						 | 
					@ -776,9 +776,16 @@ def run_pydoc_pager(request, what, expected_first_line):
 | 
				
			||||||
                        'Help on function help in module pydoc:')
 | 
					                        'Help on function help in module pydoc:')
 | 
				
			||||||
        run_pydoc_pager('str', 'str', 'Help on class str in module builtins:')
 | 
					        run_pydoc_pager('str', 'str', 'Help on class str in module builtins:')
 | 
				
			||||||
        run_pydoc_pager(str, 'str', 'Help on class str in module builtins:')
 | 
					        run_pydoc_pager(str, 'str', 'Help on class str in module builtins:')
 | 
				
			||||||
        run_pydoc_pager('str.upper', 'str.upper', 'Help on method_descriptor in str:')
 | 
					        run_pydoc_pager('str.upper', 'str.upper',
 | 
				
			||||||
        run_pydoc_pager(str.upper, 'str.upper', 'Help on method_descriptor:')
 | 
					                        'Help on method descriptor upper in str:')
 | 
				
			||||||
        run_pydoc_pager(str.__add__, 'str.__add__', 'Help on wrapper_descriptor:')
 | 
					        run_pydoc_pager(str.upper, 'str.upper',
 | 
				
			||||||
 | 
					                        'Help on method descriptor upper:')
 | 
				
			||||||
 | 
					        run_pydoc_pager(''.upper, 'str.upper',
 | 
				
			||||||
 | 
					                        'Help on built-in function upper:')
 | 
				
			||||||
 | 
					        run_pydoc_pager(str.__add__,
 | 
				
			||||||
 | 
					                        'str.__add__', 'Help on method descriptor __add__:')
 | 
				
			||||||
 | 
					        run_pydoc_pager(''.__add__,
 | 
				
			||||||
 | 
					                        'str.__add__', 'Help on method wrapper __add__:')
 | 
				
			||||||
        run_pydoc_pager(int.numerator, 'int.numerator',
 | 
					        run_pydoc_pager(int.numerator, 'int.numerator',
 | 
				
			||||||
                        'Help on getset descriptor builtins.int.numerator:')
 | 
					                        'Help on getset descriptor builtins.int.numerator:')
 | 
				
			||||||
        run_pydoc_pager(list[int], 'list',
 | 
					        run_pydoc_pager(list[int], 'list',
 | 
				
			||||||
| 
						 | 
					
 | 
				
			||||||
| 
						 | 
					@ -0,0 +1 @@
 | 
				
			||||||
 | 
					Improve support of method descriptors and wrappers in the help title.
 | 
				
			||||||
		Loading…
	
	Add table
		Add a link
		
	
		Reference in a new issue