mirror of
https://github.com/sphinx-doc/sphinx.git
synced 2025-02-25 18:55:22 -06:00
Fix behavior for .. method directives inside a .. class.
This commit is contained in:
parent
b5d7a5ff8f
commit
46f7a97c4f
@ -133,10 +133,12 @@ def parse_py_signature(signode, sig, desctype, env):
|
|||||||
if m is None: raise ValueError
|
if m is None: raise ValueError
|
||||||
classname, name, arglist = m.groups()
|
classname, name, arglist = m.groups()
|
||||||
|
|
||||||
|
add_module = True
|
||||||
if env.currclass:
|
if env.currclass:
|
||||||
if classname and classname.startswith(env.currclass):
|
if classname and classname.startswith(env.currclass):
|
||||||
fullname = classname + name
|
fullname = classname + name
|
||||||
classname = classname[len(env.currclass):].lstrip('.')
|
classname = classname[len(env.currclass):].lstrip('.')
|
||||||
|
add_module = False
|
||||||
elif classname:
|
elif classname:
|
||||||
fullname = env.currclass + '.' + classname + name
|
fullname = env.currclass + '.' + classname + name
|
||||||
else:
|
else:
|
||||||
@ -148,7 +150,7 @@ def parse_py_signature(signode, sig, desctype, env):
|
|||||||
signode += addnodes.desc_classname(classname, classname)
|
signode += addnodes.desc_classname(classname, classname)
|
||||||
# exceptions are a special case, since they are documented in the
|
# exceptions are a special case, since they are documented in the
|
||||||
# 'exceptions' module.
|
# 'exceptions' module.
|
||||||
elif env.config.add_module_names and \
|
elif add_module and env.config.add_module_names and \
|
||||||
env.currmodule and env.currmodule != 'exceptions':
|
env.currmodule and env.currmodule != 'exceptions':
|
||||||
nodetext = env.currmodule + '.'
|
nodetext = env.currmodule + '.'
|
||||||
signode += addnodes.desc_classname(nodetext, nodetext)
|
signode += addnodes.desc_classname(nodetext, nodetext)
|
||||||
|
Loading…
Reference in New Issue
Block a user