mirror of
https://github.com/sphinx-doc/sphinx.git
synced 2025-02-25 18:55:22 -06:00
Fix annotations for cpp domain
This commit is contained in:
parent
9e191ad6c1
commit
826301dbb1
@ -276,7 +276,7 @@ class Domain:
|
|||||||
pass
|
pass
|
||||||
|
|
||||||
def process_field_xref(self, pnode):
|
def process_field_xref(self, pnode):
|
||||||
# type: (nodes.Node) -> None
|
# type: (addnodes.pending_xref) -> None
|
||||||
"""Process a pending xref created in a doc field.
|
"""Process a pending xref created in a doc field.
|
||||||
For example, attach information about the current scope.
|
For example, attach information about the current scope.
|
||||||
"""
|
"""
|
||||||
|
@ -2230,7 +2230,7 @@ class ASTNestedName(ASTBase):
|
|||||||
# else append directly to signode.
|
# else append directly to signode.
|
||||||
# NOTE: Breathe relies on the prefix being in the desc_addname node,
|
# NOTE: Breathe relies on the prefix being in the desc_addname node,
|
||||||
# so it can remove it in inner declarations.
|
# so it can remove it in inner declarations.
|
||||||
dest = signode # type: nodes.Element
|
dest = signode
|
||||||
if mode == 'lastIsName':
|
if mode == 'lastIsName':
|
||||||
dest = addnodes.desc_addname()
|
dest = addnodes.desc_addname()
|
||||||
for i in range(len(names)):
|
for i in range(len(names)):
|
||||||
@ -6809,7 +6809,7 @@ class CPPDomain(Domain):
|
|||||||
pass
|
pass
|
||||||
|
|
||||||
def process_field_xref(self, pnode):
|
def process_field_xref(self, pnode):
|
||||||
# type: (nodes.Node) -> None
|
# type: (addnodes.pending_xref) -> None
|
||||||
pnode.attributes.update(self.env.ref_context)
|
pnode.attributes.update(self.env.ref_context)
|
||||||
|
|
||||||
def merge_domaindata(self, docnames, otherdata):
|
def merge_domaindata(self, docnames, otherdata):
|
||||||
@ -6835,8 +6835,7 @@ class CPPDomain(Domain):
|
|||||||
|
|
||||||
def _resolve_xref_inner(self, env, fromdocname, builder, typ,
|
def _resolve_xref_inner(self, env, fromdocname, builder, typ,
|
||||||
target, node, contnode, emitWarnings=True):
|
target, node, contnode, emitWarnings=True):
|
||||||
# type: (BuildEnvironment, unicode, Builder, unicode, unicode, addnodes.pending_xref, nodes.Element, bool) -> nodes.Element # NOQA
|
# type: (BuildEnvironment, unicode, Builder, unicode, unicode, addnodes.pending_xref, nodes.Element, bool) -> Tuple[nodes.Element, unicode] # NOQA
|
||||||
|
|
||||||
class Warner:
|
class Warner:
|
||||||
def warn(self, msg):
|
def warn(self, msg):
|
||||||
if emitWarnings:
|
if emitWarnings:
|
||||||
@ -6973,23 +6972,21 @@ class CPPDomain(Domain):
|
|||||||
declaration.get_newest_id(), contnode, displayName
|
declaration.get_newest_id(), contnode, displayName
|
||||||
), declaration.objectType
|
), declaration.objectType
|
||||||
|
|
||||||
def resolve_xref(self, env, fromdocname, builder,
|
def resolve_xref(self, env, fromdocname, builder, typ, target, node, contnode):
|
||||||
typ, target, node, contnode):
|
|
||||||
# type: (BuildEnvironment, unicode, Builder, unicode, unicode, addnodes.pending_xref, nodes.Element) -> nodes.Element # NOQA
|
# type: (BuildEnvironment, unicode, Builder, unicode, unicode, addnodes.pending_xref, nodes.Element) -> nodes.Element # NOQA
|
||||||
return self._resolve_xref_inner(env, fromdocname, builder, typ,
|
return self._resolve_xref_inner(env, fromdocname, builder, typ,
|
||||||
target, node, contnode)[0]
|
target, node, contnode)[0]
|
||||||
|
|
||||||
def resolve_any_xref(self, env, fromdocname, builder, target,
|
def resolve_any_xref(self, env, fromdocname, builder, target, node, contnode):
|
||||||
node, contnode):
|
# type: (BuildEnvironment, unicode, Builder, unicode, addnodes.pending_xref, nodes.Element) -> List[Tuple[unicode, nodes.Element]] # NOQA
|
||||||
# type: (BuildEnvironment, unicode, Builder, unicode, nodes.pending_xref, nodes.Node) -> List[Tuple[unicode, nodes.Element]] # NOQA
|
retnode, objtype = self._resolve_xref_inner(env, fromdocname, builder,
|
||||||
node, objtype = self._resolve_xref_inner(env, fromdocname, builder,
|
'any', target, node, contnode,
|
||||||
'any', target, node, contnode,
|
emitWarnings=False)
|
||||||
emitWarnings=False)
|
if retnode:
|
||||||
if node:
|
|
||||||
if objtype == 'templateParam':
|
if objtype == 'templateParam':
|
||||||
return [('cpp:templateParam', node)]
|
return [('cpp:templateParam', retnode)]
|
||||||
else:
|
else:
|
||||||
return [('cpp:' + self.role_for_objtype(objtype), node)]
|
return [('cpp:' + self.role_for_objtype(objtype), retnode)]
|
||||||
return []
|
return []
|
||||||
|
|
||||||
def get_objects(self):
|
def get_objects(self):
|
||||||
|
@ -80,7 +80,7 @@ class Field:
|
|||||||
reftype=rolename, reftarget=target)
|
reftype=rolename, reftarget=target)
|
||||||
refnode += contnode or innernode(target, target)
|
refnode += contnode or innernode(target, target)
|
||||||
if env:
|
if env:
|
||||||
env.domains[domain].process_field_xref(refnode)
|
env.get_domain(domain).process_field_xref(refnode)
|
||||||
return refnode
|
return refnode
|
||||||
|
|
||||||
def make_xrefs(self,
|
def make_xrefs(self,
|
||||||
|
Loading…
Reference in New Issue
Block a user