Retain doxygen comments for using declarations and type aliases

This commit is contained in:
Dustin Spicuzza
2023-11-18 00:12:35 -05:00
parent f1708bf9b8
commit 73a81d3107
3 changed files with 68 additions and 6 deletions

View File

@@ -26,6 +26,7 @@ from cxxheaderparser.types import (
Type,
Typedef,
UsingDecl,
UsingAlias,
Value,
Variable,
)
@@ -436,3 +437,53 @@ def test_doxygen_attribute() -> None:
]
)
)
def test_doxygen_using_decl() -> None:
content = """
// clang-format off
/// Comment
using ns::ClassName;
"""
data = parse_string(content, cleandoc=True)
assert data == ParsedData(
namespace=NamespaceScope(
using=[
UsingDecl(
typename=PQName(
segments=[
NameSpecifier(name="ns"),
NameSpecifier(name="ClassName"),
]
),
doxygen="/// Comment",
)
]
)
)
def test_doxygen_using_alias() -> None:
content = """
// clang-format off
/// Comment
using alias = sometype;
"""
data = parse_string(content, cleandoc=True)
assert data == ParsedData(
namespace=NamespaceScope(
using_alias=[
UsingAlias(
alias="alias",
type=Type(
typename=PQName(segments=[NameSpecifier(name="sometype")])
),
doxygen="/// Comment",
)
]
)
)