From b083e93a0e262a844bb538079613767b0b58173b Mon Sep 17 00:00:00 2001 From: alandefreitas Date: Tue, 22 Oct 2024 03:40:18 -0300 Subject: [PATCH] test: asciidoc golden tests --- .gitignore | 1 - CMakeLists.txt | 56 +- src/lib/Lib/ConfigOptions.json | 2 +- src/test/TestArgs.cpp | 19 +- src/test/TestArgs.hpp | 6 +- src/test/TestMain.cpp | 6 +- src/test/TestRunner.cpp | 151 +- src/test/TestRunner.hpp | 12 +- test-files/golden-tests/alias-template.adoc | 128 + test-files/golden-tests/attributes_1.adoc | 41 + test-files/golden-tests/brief-1.adoc | 90 + test-files/golden-tests/brief-2.adoc | 212 ++ test-files/golden-tests/canonical_1.adoc | 183 ++ .../class-template-partial-spec.adoc | 110 + .../golden-tests/class-template-spec.adoc | 494 ++++ .../class-template-specializations-1.adoc | 2069 +++++++++++++++++ .../class-template-specializations-2.adoc | 357 +++ .../class-template-specializations-3.adoc | 543 +++++ test-files/golden-tests/class-template.adoc | 504 ++++ test-files/golden-tests/commands.adoc | 51 + test-files/golden-tests/concept.adoc | 91 + .../golden-tests/dependency-propagation.adoc | 117 + test-files/golden-tests/duplicate-jdoc.adoc | 269 +++ test-files/golden-tests/empty.adoc | 10 + test-files/golden-tests/enum.adoc | 317 +++ .../golden-tests/explicit-conv-operator.adoc | 224 ++ test-files/golden-tests/explicit-ctor.adoc | 688 ++++++ .../golden-tests/explicit-deduct-guide.adoc | 119 + .../explicit-object-parameter.adoc | 131 ++ .../golden-tests/filters/blacklist_0.adoc | 213 ++ .../golden-tests/filters/blacklist_test.adoc | 62 + test-files/golden-tests/filters/filters.adoc | 705 ++++++ .../golden-tests/filters/whitelist_0.adoc | 280 +++ .../golden-tests/filters/whitelist_test.adoc | 93 + test-files/golden-tests/friend-1.adoc | 101 + test-files/golden-tests/friend-2.adoc | 101 + test-files/golden-tests/friend-3.adoc | 148 ++ test-files/golden-tests/friend-4.adoc | 148 ++ test-files/golden-tests/friend-5.adoc | 144 ++ test-files/golden-tests/friend-6.adoc | 197 ++ .../golden-tests/function-parm-decay.adoc | 162 ++ .../golden-tests/function-template.adoc | 351 +++ .../golden-tests/function-tparm-decay.adoc | 166 ++ .../implicit-instantiation-member-ref.adoc | 444 ++++ test-files/golden-tests/local-class.adoc | 68 + test-files/golden-tests/mem-fn.adoc | 1028 ++++++++ .../golden-tests/namespace-alias-1.adoc | 40 + .../golden-tests/namespace-alias-2.adoc | 57 + .../golden-tests/namespace-alias-3.adoc | 57 + test-files/golden-tests/namespace.adoc | 511 ++++ .../golden-tests/nested-private-template.adoc | 88 + .../golden-tests/no_unique_address.adoc | 100 + test-files/golden-tests/noreturn.adoc | 156 ++ test-files/golden-tests/ns-variables.adoc | 223 ++ .../golden-tests/out-of-line-record-def.adoc | 49 + test-files/golden-tests/overloaded-op-1.adoc | 67 + test-files/golden-tests/overloaded-op-2.adoc | 67 + test-files/golden-tests/para-1.adoc | 133 ++ test-files/golden-tests/para-2.adoc | 54 + test-files/golden-tests/param-direction.adoc | 402 ++++ test-files/golden-tests/param.adoc | 176 ++ test-files/golden-tests/pre-post.adoc | 56 + test-files/golden-tests/record-1.adoc | 286 +++ test-files/golden-tests/record-access.adoc | 357 +++ test-files/golden-tests/record-data.adoc | 463 ++++ .../golden-tests/record-inheritance.adoc | 367 +++ test-files/golden-tests/ref.adoc | 1580 +++++++++++++ test-files/golden-tests/requires-clause.adoc | 206 ++ .../spec-mem-implicit-instantiation.adoc | 270 +++ .../static-data-def-constexpr.adoc | 109 + test-files/golden-tests/static-data-def.adoc | 304 +++ .../golden-tests/static-data-template.adoc | 110 + .../golden-tests/temp/c_mct_expl_inline.adoc | 147 ++ .../golden-tests/temp/c_mct_expl_outside.adoc | 147 ++ .../golden-tests/temp/c_mft_expl_inline.adoc | 123 + .../golden-tests/temp/c_mft_expl_outside.adoc | 123 + test-files/golden-tests/temp/ct_expl.adoc | 121 + test-files/golden-tests/temp/ct_mc.adoc | 94 + .../golden-tests/temp/ct_mc_expl_outside.adoc | 97 + test-files/golden-tests/temp/ct_mct.adoc | 95 + .../golden-tests/temp/ct_mct_expl_inline.adoc | 148 ++ .../temp/ct_mct_expl_outside.adoc | 98 + test-files/golden-tests/temp/ct_mf.adoc | 68 + .../golden-tests/temp/ct_mf_expl_outside.adoc | 71 + test-files/golden-tests/temp/ct_mft.adoc | 69 + .../golden-tests/temp/ct_mft_expl_inline.adoc | 124 + .../temp/ct_mft_expl_outside.adoc | 72 + test-files/golden-tests/temp/ft_expl.adoc | 97 + test-files/golden-tests/type-resolution.adoc | 1293 ++++++++++ test-files/golden-tests/union.adoc | 162 ++ test-files/golden-tests/using-1.adoc | 30 + test-files/golden-tests/using-2.adoc | 120 + test-files/golden-tests/using-3.adoc | 207 ++ test-files/golden-tests/utf-8.adoc | 41 + test-files/golden-tests/var-template.adoc | 169 ++ .../golden-tests/variadic-function.adoc | 134 ++ 96 files changed, 21440 insertions(+), 110 deletions(-) create mode 100644 test-files/golden-tests/alias-template.adoc create mode 100644 test-files/golden-tests/attributes_1.adoc create mode 100644 test-files/golden-tests/brief-1.adoc create mode 100644 test-files/golden-tests/brief-2.adoc create mode 100644 test-files/golden-tests/canonical_1.adoc create mode 100644 test-files/golden-tests/class-template-partial-spec.adoc create mode 100644 test-files/golden-tests/class-template-spec.adoc create mode 100644 test-files/golden-tests/class-template-specializations-1.adoc create mode 100644 test-files/golden-tests/class-template-specializations-2.adoc create mode 100644 test-files/golden-tests/class-template-specializations-3.adoc create mode 100644 test-files/golden-tests/class-template.adoc create mode 100644 test-files/golden-tests/commands.adoc create mode 100644 test-files/golden-tests/concept.adoc create mode 100644 test-files/golden-tests/dependency-propagation.adoc create mode 100644 test-files/golden-tests/duplicate-jdoc.adoc create mode 100644 test-files/golden-tests/empty.adoc create mode 100644 test-files/golden-tests/enum.adoc create mode 100644 test-files/golden-tests/explicit-conv-operator.adoc create mode 100644 test-files/golden-tests/explicit-ctor.adoc create mode 100644 test-files/golden-tests/explicit-deduct-guide.adoc create mode 100644 test-files/golden-tests/explicit-object-parameter.adoc create mode 100644 test-files/golden-tests/filters/blacklist_0.adoc create mode 100644 test-files/golden-tests/filters/blacklist_test.adoc create mode 100644 test-files/golden-tests/filters/filters.adoc create mode 100644 test-files/golden-tests/filters/whitelist_0.adoc create mode 100644 test-files/golden-tests/filters/whitelist_test.adoc create mode 100644 test-files/golden-tests/friend-1.adoc create mode 100644 test-files/golden-tests/friend-2.adoc create mode 100644 test-files/golden-tests/friend-3.adoc create mode 100644 test-files/golden-tests/friend-4.adoc create mode 100644 test-files/golden-tests/friend-5.adoc create mode 100644 test-files/golden-tests/friend-6.adoc create mode 100644 test-files/golden-tests/function-parm-decay.adoc create mode 100644 test-files/golden-tests/function-template.adoc create mode 100644 test-files/golden-tests/function-tparm-decay.adoc create mode 100644 test-files/golden-tests/implicit-instantiation-member-ref.adoc create mode 100644 test-files/golden-tests/local-class.adoc create mode 100644 test-files/golden-tests/mem-fn.adoc create mode 100644 test-files/golden-tests/namespace-alias-1.adoc create mode 100644 test-files/golden-tests/namespace-alias-2.adoc create mode 100644 test-files/golden-tests/namespace-alias-3.adoc create mode 100644 test-files/golden-tests/namespace.adoc create mode 100644 test-files/golden-tests/nested-private-template.adoc create mode 100644 test-files/golden-tests/no_unique_address.adoc create mode 100644 test-files/golden-tests/noreturn.adoc create mode 100644 test-files/golden-tests/ns-variables.adoc create mode 100644 test-files/golden-tests/out-of-line-record-def.adoc create mode 100644 test-files/golden-tests/overloaded-op-1.adoc create mode 100644 test-files/golden-tests/overloaded-op-2.adoc create mode 100644 test-files/golden-tests/para-1.adoc create mode 100644 test-files/golden-tests/para-2.adoc create mode 100644 test-files/golden-tests/param-direction.adoc create mode 100644 test-files/golden-tests/param.adoc create mode 100644 test-files/golden-tests/pre-post.adoc create mode 100644 test-files/golden-tests/record-1.adoc create mode 100644 test-files/golden-tests/record-access.adoc create mode 100644 test-files/golden-tests/record-data.adoc create mode 100644 test-files/golden-tests/record-inheritance.adoc create mode 100644 test-files/golden-tests/ref.adoc create mode 100644 test-files/golden-tests/requires-clause.adoc create mode 100644 test-files/golden-tests/spec-mem-implicit-instantiation.adoc create mode 100644 test-files/golden-tests/static-data-def-constexpr.adoc create mode 100644 test-files/golden-tests/static-data-def.adoc create mode 100644 test-files/golden-tests/static-data-template.adoc create mode 100644 test-files/golden-tests/temp/c_mct_expl_inline.adoc create mode 100644 test-files/golden-tests/temp/c_mct_expl_outside.adoc create mode 100644 test-files/golden-tests/temp/c_mft_expl_inline.adoc create mode 100644 test-files/golden-tests/temp/c_mft_expl_outside.adoc create mode 100644 test-files/golden-tests/temp/ct_expl.adoc create mode 100644 test-files/golden-tests/temp/ct_mc.adoc create mode 100644 test-files/golden-tests/temp/ct_mc_expl_outside.adoc create mode 100644 test-files/golden-tests/temp/ct_mct.adoc create mode 100644 test-files/golden-tests/temp/ct_mct_expl_inline.adoc create mode 100644 test-files/golden-tests/temp/ct_mct_expl_outside.adoc create mode 100644 test-files/golden-tests/temp/ct_mf.adoc create mode 100644 test-files/golden-tests/temp/ct_mf_expl_outside.adoc create mode 100644 test-files/golden-tests/temp/ct_mft.adoc create mode 100644 test-files/golden-tests/temp/ct_mft_expl_inline.adoc create mode 100644 test-files/golden-tests/temp/ct_mft_expl_outside.adoc create mode 100644 test-files/golden-tests/temp/ft_expl.adoc create mode 100644 test-files/golden-tests/type-resolution.adoc create mode 100644 test-files/golden-tests/union.adoc create mode 100644 test-files/golden-tests/using-1.adoc create mode 100644 test-files/golden-tests/using-2.adoc create mode 100644 test-files/golden-tests/using-3.adoc create mode 100644 test-files/golden-tests/utf-8.adoc create mode 100644 test-files/golden-tests/var-template.adoc create mode 100644 test-files/golden-tests/variadic-function.adoc diff --git a/.gitignore b/.gitignore index b396488a2..04ecf2a56 100644 --- a/.gitignore +++ b/.gitignore @@ -7,7 +7,6 @@ /local /temp /test-files/py -/test-files/**/*.adoc /test-files/**/*.bad.xml docs/node_modules docs/build diff --git a/CMakeLists.txt b/CMakeLists.txt index fd67d7c4d..847afce51 100644 --- a/CMakeLists.txt +++ b/CMakeLists.txt @@ -81,6 +81,7 @@ if (LLVM_ROOT) "No /lib/cmake/llvm found.\n" "Please set LLVM_ROOT to the root of LLVM install.\n") endif() + message(STATUS "LLVM_ROOT: ${LLVM_ROOT}") endif() if (Clang_ROOT) # Clang_ROOT is absolute @@ -95,7 +96,19 @@ find_package(Clang REQUIRED CONFIG) if (LLVM_ROOT) set(LIBCXX_DIR "${LLVM_ROOT}/include/c++/v1/") + message(STATUS "LIBCXX_DIR: ${LIBCXX_DIR}") + if (NOT EXISTS "${LIBCXX_DIR}") + message(FATAL_ERROR + "LIBCXX_DIR (${LIBCXX_DIR}) does not exist.\n" + "LLVM_ROOT is set, but LIBCXX_DIR (/include/c++/v1) does not exist.\n") + endif() set(STDLIB_INCLUDE_DIR "${LLVM_ROOT}/lib/clang/${Clang_VERSION_MAJOR}/include/") + message(STATUS "STDLIB_INCLUDE_DIR: ${STDLIB_INCLUDE_DIR}") + if (NOT EXISTS "${STDLIB_INCLUDE_DIR}") + message(FATAL_ERROR + "STDLIB_INCLUDE_DIR (${STDLIB_INCLUDE_DIR}) does not exist.\n" + "LLVM_ROOT is set, but STDLIB_INCLUDE_DIR (/lib/clang/${Clang_VERSION_MAJOR}/include) does not exist.\n") + endif() endif() list(APPEND CMAKE_MODULE_PATH "${LLVM_CMAKE_DIR}") @@ -337,29 +350,34 @@ if (MRDOCS_BUILD_TESTS) endif () target_compile_definitions(mrdocs-test PRIVATE -DMRDOCS_TEST_FILES_DIR="${CMAKE_CURRENT_SOURCE_DIR}/test-files") add_test(NAME mrdocs-unit-tests COMMAND mrdocs-test --unit=true) - add_test(NAME mrdocs-golden-tests - COMMAND - mrdocs-test - --unit=false - --action=test - "${PROJECT_SOURCE_DIR}/test-files/golden-tests" - --addons="${CMAKE_SOURCE_DIR}/share/mrdocs/addons" - --system-includes="${LIBCXX_DIR}" - --system-includes="${STDLIB_INCLUDE_DIR}") - foreach (action IN ITEMS create update) - add_custom_target( - mrdocs-${action}-test-fixtures + foreach (testgenerator IN ITEMS xml adoc) + add_test(NAME mrdocs-golden-tests-${testgenerator} COMMAND mrdocs-test --unit=false - --action=${action} + --action=test "${PROJECT_SOURCE_DIR}/test-files/golden-tests" - --addons="${CMAKE_SOURCE_DIR}/share/mrdocs/addons" - --system-includes="${LIBCXX_DIR}" - --system-includes="${STDLIB_INCLUDE_DIR}" - DEPENDS mrdocs-test + "--addons=${CMAKE_SOURCE_DIR}/share/mrdocs/addons" + --generator=${testgenerator} + "--stdlib-includes=${LIBCXX_DIR}" + "--stdlib-includes=${STDLIB_INCLUDE_DIR}" ) - endforeach () + foreach (action IN ITEMS test create update) + add_custom_target( + mrdocs-${action}-test-fixtures-${testgenerator} + COMMAND + mrdocs-test + --unit=false + --action=${action} + "${PROJECT_SOURCE_DIR}/test-files/golden-tests" + "--addons=${CMAKE_SOURCE_DIR}/share/mrdocs/addons" + --generator=${testgenerator} + "--stdlib-includes=${LIBCXX_DIR}" + "--stdlib-includes=${STDLIB_INCLUDE_DIR}" + DEPENDS mrdocs-test + ) + endforeach () + endforeach() #------------------------------------------------- # XML lint @@ -436,7 +454,7 @@ if (MRDOCS_BUILD_DOCS) COMMAND ${CMAKE_COMMAND} -E echo "Install npm dependencies" COMMAND ${NPM_EXECUTABLE} install COMMAND ${CMAKE_COMMAND} -E echo "Run Antora" - COMMAND ${NPX_EXECUTABLE} antora local-antora-playbook.yml + COMMAND ${NPX_EXECUTABLE} antora antora-playbook.yml WORKING_DIRECTORY ${DOCS_SOURCE_DIR} COMMENT "Generating MrDocs documentation" USES_TERMINAL diff --git a/src/lib/Lib/ConfigOptions.json b/src/lib/Lib/ConfigOptions.json index 01ff74027..af136d940 100644 --- a/src/lib/Lib/ConfigOptions.json +++ b/src/lib/Lib/ConfigOptions.json @@ -9,7 +9,7 @@ "name": "inputs", "command-line-only": true, "brief": "Configuration or compilation database files", - "details": "The inputs are configuration files or compilation database files that are used to generate the documentation. These inputs can be configuration files or compilation database files. When the input ends with `mrdocs.yml`, it is interpreted as a configuration file, the file is read and the options are used to generate the documentation as if it was provided to the `config` option. When the input ends with `compilation_database.json` or `CMakeLists.txt`, it is interpreted as a compilation database file, the file is read and the compiler flags are used to generate the documentation as if it was provided to the `compilation-database` option.", + "details": "The inputs are configuration files or compilation database files that used to generate the documentation. When the input ends with `mrdocs.yml`, it is interpreted as a configuration file, the file is read and the options are used to generate the documentation as if it was provided to the `config` option. When the input ends with `compilation_database.json` or `CMakeLists.txt`, it is interpreted as a compilation database file, the file is read and the compiler flags are used to generate the documentation as if it was provided to the `compilation-database` option.", "type": "list", "default": [], "command-line-sink": true, diff --git a/src/test/TestArgs.cpp b/src/test/TestArgs.cpp index 96687cb3e..cc3f89a69 100644 --- a/src/test/TestArgs.cpp +++ b/src/test/TestArgs.cpp @@ -56,8 +56,8 @@ R"( llvm::cl::init(test), llvm::cl::values( clEnumVal(test, "Compare output against expected."), - clEnumVal(create, "Create missing expected xml files."), - clEnumVal(update, "Update all expected xml files.")), + clEnumVal(create, "Create missing expected documentation files."), + clEnumVal(update, "Update all expected documentation files.")), llvm::cl::cat(commonCat)) , badOption( @@ -76,20 +76,21 @@ R"( llvm::cl::desc("A list of directories and/or .cpp files to test."), llvm::cl::cat(commonCat)) +, generator( + "generator", + llvm::cl::desc("The generator to use for tests."), + llvm::cl::init("xml")) + , addons( "addons", llvm::cl::desc("The directory with the addons."), llvm::cl::cat(commonCat)) -, systemIncludes( - "system-includes", - llvm::cl::desc("A list of paths to the system headers."), +, stdlibIncludes( + "stdlib-includes", + llvm::cl::desc("A list of paths to std library headers."), llvm::cl::cat(commonCat)) -, includes( - "includes", - llvm::cl::desc("A list of paths to additional include directories."), - llvm::cl::cat(commonCat)) { } diff --git a/src/test/TestArgs.hpp b/src/test/TestArgs.hpp index 17407761b..01e49562d 100644 --- a/src/test/TestArgs.hpp +++ b/src/test/TestArgs.hpp @@ -46,9 +46,11 @@ class TestArgs llvm::cl::opt badOption; llvm::cl::opt unitOption; llvm::cl::list inputPaths; + + // Options replication public settings + llvm::cl::opt generator; llvm::cl::opt addons; - llvm::cl::list systemIncludes; - llvm::cl::list includes; + llvm::cl::list stdlibIncludes; // Hide all options that don't belong to us void hideForeignOptions(); diff --git a/src/test/TestMain.cpp b/src/test/TestMain.cpp index b162b1b55..3c4d971fe 100644 --- a/src/test/TestMain.cpp +++ b/src/test/TestMain.cpp @@ -32,7 +32,7 @@ void DoTestAction() { using namespace clang::mrdocs; - TestRunner runner; + TestRunner runner(testArgs.generator); for(auto const& inputPath : testArgs.inputPaths) runner.checkPath(inputPath); auto const& results = runner.results; @@ -55,9 +55,9 @@ void DoTestAction() os << report::numberOf(results.numberOfDirs.load(), "directory", "directories") << " visited"; - if(auto n = results.expectedXmlMatching.load()) + if(auto n = results.expectedDocsMatching.load()) os << ", " << report::numberOf(n, "file", "files") << " matched"; - if(auto n = results.expectedXmlWritten.load()) + if(auto n = results.expectedDocsWritten.load()) os << ", " << report::numberOf(n, "file", "files") << " written"; os << ".\n"; report::print(os.str()); diff --git a/src/test/TestRunner.cpp b/src/test/TestRunner.cpp index 45d08b96b..87e887b87 100644 --- a/src/test/TestRunner.cpp +++ b/src/test/TestRunner.cpp @@ -33,11 +33,11 @@ namespace clang { namespace mrdocs { TestRunner:: -TestRunner() +TestRunner(std::string_view generator) : diffCmdPath_(llvm::sys::findProgramByName("diff")) - , xmlGen_(getGenerators().find("xml")) + , gen_(getGenerators().find(generator)) { - MRDOCS_ASSERT(xmlGen_ != nullptr); + MRDOCS_ASSERT(gen_ != nullptr); } Error @@ -57,6 +57,16 @@ writeFile( return Error::success(); } +void +replaceCRLFWithLF(std::string &str) +{ + std::string::size_type pos = 0; + while ((pos = str.find("\r\n", pos)) != std::string::npos) { + str.replace(pos, 2, "\n"); + pos += 1; // Move past the '\n' character + } +} + void TestRunner:: handleFile( @@ -68,7 +78,7 @@ handleFile( MRDOCS_ASSERT(path::extension(filePath).compare_insensitive(".cpp") == 0); - // Check the fource file + // Check the source file auto ft = files::getFileType(filePath); if (ft.value() == files::FileType::not_found) { return report::error("{}: \"{}\"", @@ -92,9 +102,9 @@ handleFile( std::shared_ptr config = ConfigImpl::load(fileSettings, dirs_, threadPool_).value(); - // Path with the expected XML results + // Path with the expected results SmallPathString expectedPath = filePath; - path::replace_extension(expectedPath, xmlGen_->fileExtension()); + path::replace_extension(expectedPath, gen_->fileExtension()); // Create an adjusted MrDocsDatabase auto parentDir = files::getParentDir(filePath); @@ -108,99 +118,94 @@ handleFile( if(! corpus) return report::error("{}: \"{}\"", corpus.error(), filePath); - // Generate XML - std::string generatedXml; - if(auto err = xmlGen_->buildOneString(generatedXml, **corpus)) + // Generate + std::string generatedDocs; + if(auto err = gen_->buildOneString(generatedDocs, **corpus)) return report::error("{}: \"{}\"", err, filePath); + replaceCRLFWithLF(generatedDocs); - // Get expected XML if it exists - std::unique_ptr expectedXml; + // Get expected documentation if it exists + std::unique_ptr expectedDocsBuf; { auto fileResult = llvm::MemoryBuffer::getFile(expectedPath, false, true, true); if(fileResult) - expectedXml = std::move(fileResult.get()); + expectedDocsBuf = std::move(fileResult.get()); else if(fileResult.getError() != std::errc::no_such_file_or_directory) return report::error("{}: \"{}\"", fileResult.getError(), expectedPath); } - // Analyse results - if(! expectedXml) + // If no expected documentation file + if(!expectedDocsBuf) { if(testArgs.action == Action::test) { - // Can't test without expected XML file + // Can't test without expected documentation file return report::error("{}: \"{}\"", - Error("missing xml file"), expectedPath); + Error("missing test file"), expectedPath); } - if(testArgs.action == Action::create) + if(testArgs.action == Action::create || + testArgs.action == Action::update) { - // Create expected XML file - if(auto err = writeFile(expectedPath, generatedXml)) + // Create expected documentation file + if(auto err = writeFile(expectedPath, generatedDocs)) return report::error("{}: \"{}\"", err, expectedPath); report::info("\"{}\" created", expectedPath); - ++results.expectedXmlWritten; + ++results.expectedDocsWritten; return; } } - else if( + + // Analyse results + std::string expectedDocs = expectedDocsBuf->getBuffer().str(); + replaceCRLFWithLF(expectedDocs); + if (generatedDocs == expectedDocs) + { + report::info("\"{}\" passed", filePath); + ++results.expectedDocsMatching; + return; + } + + // Mismatch + if( testArgs.action == Action::test || testArgs.action == Action::create) { - // Compare the generated output with the expected output - if(generatedXml != expectedXml->getBuffer()) + report::error("{}: \"{}\"", + Error("Incorrect results"), filePath); + auto res = test_suite::diffStrings(expectedDocs, generatedDocs); + report::error("{} lines added", res.added); + report::error("{} lines removed", res.removed); + + report::error("Diff:\n{}", res.diff); + + if(testArgs.badOption.getValue()) { - // mismatch - report::error("{}: \"{}\"", - Error("incorrect results"), filePath); - auto res = test_suite::diffStrings( - expectedXml->getBuffer(), generatedXml); - report::error("{} lines added", res.added); - report::error("{} lines removed", res.removed); - report::error("Diff:\n{}", res.diff); - - if(testArgs.badOption.getValue()) + // Write the .bad. file + auto badPath = expectedPath; + path::replace_extension(badPath, llvm::Twine("bad.").concat(gen_->fileExtension())); + if(auto err = writeFile(badPath, generatedDocs)) + return report::error("{}: \"{}\"", err, badPath); + report::info("\"{}\" written", badPath); + + // VFALCO We are calling this over and over again instead of once? + if(! diffCmdPath_.getError()) { - // Write the .bad.xml file - auto badPath = expectedPath; - path::replace_extension(badPath, "bad.xml"); - if(auto err = writeFile(badPath, generatedXml)) - return report::error("{}: \"{}\"", err, badPath); - report::info("\"{}\" written", badPath); - - // VFALCO We are calling this over and over again instead of once? - if(! diffCmdPath_.getError()) - { - path::replace_extension(badPath, "xml"); - std::array args { - diffCmdPath_.get(), "-u", "--color", expectedPath, badPath }; - llvm::sys::ExecuteAndWait(diffCmdPath_.get(), args); - } + path::replace_extension(badPath, gen_->fileExtension()); + std::array args { + diffCmdPath_.get(), "-u", "--color", expectedPath, badPath }; + llvm::sys::ExecuteAndWait(diffCmdPath_.get(), args); } } - else - { - report::info("\"{}\" passed", filePath); - ++results.expectedXmlMatching; - } - return; } - // update action - if(testArgs.action == Action::update) + else if(testArgs.action == Action::update) { - if(! expectedXml || generatedXml != expectedXml->getBuffer()) - { - // Update the expected XML - if(auto err = writeFile(expectedPath, generatedXml)) - return report::error("{}: \"{}\"", err, expectedPath); - report::info("\"{}\" updated", expectedPath); - ++results.expectedXmlWritten; - } - else - { - ++results.expectedXmlMatching; - } + // Update the expected documentation + if(auto err = writeFile(expectedPath, generatedDocs)) + return report::error("{}: \"{}\"", err, expectedPath); + report::info("\"{}\" updated", expectedPath); + ++results.expectedDocsWritten; return; } } @@ -287,10 +292,18 @@ checkPath( // Check for a directory-wide config Config::Settings dirSettings; dirSettings.sourceRoot = files::appendPath(inputPath, "."); + dirSettings.stdlibIncludes.insert( + dirSettings.stdlibIncludes.end(), + testArgs.stdlibIncludes.begin(), + testArgs.stdlibIncludes.end()); std::string const& configPath = files::appendPath(inputPath, "mrdocs.yml"); if (files::exists(configPath)) { Config::Settings::load_file(dirSettings, configPath, dirs_).value(); - dirSettings.normalize(dirs_); + auto exp = dirSettings.normalize(dirs_); + if (!exp) { + report::error("{}: \"{}\"", exp.error(), configPath); + return; + } } switch(fileType.value()) diff --git a/src/test/TestRunner.hpp b/src/test/TestRunner.hpp index 0bdd424c0..8f55529f2 100644 --- a/src/test/TestRunner.hpp +++ b/src/test/TestRunner.hpp @@ -26,11 +26,11 @@ namespace mrdocs { struct TestResults { - // Number of expected XML files written - std::atomic expectedXmlWritten = 0; + // Number of expected doc files written + std::atomic expectedDocsWritten = 0; - // Number of matching expected XML files - std::atomic expectedXmlMatching= 0; + // Number of matching expected doc files + std::atomic expectedDocsMatching = 0; // Number of directories visited std::atomic numberOfDirs = 0; @@ -52,7 +52,7 @@ class TestRunner { ThreadPool threadPool_; llvm::ErrorOr diffCmdPath_; - Generator const* xmlGen_; + Generator const* gen_; Config::Settings::ReferenceDirectories dirs_; Error writeFile( @@ -72,7 +72,7 @@ class TestRunner public: TestResults results; - TestRunner(); + TestRunner(std::string_view generator); /** Check a single file, or a directory recursively. diff --git a/test-files/golden-tests/alias-template.adoc b/test-files/golden-tests/alias-template.adoc new file mode 100644 index 000000000..7a6dbd9cb --- /dev/null +++ b/test-files/golden-tests/alias-template.adoc @@ -0,0 +1,128 @@ += Reference +:mrdocs: + +[#index] + +== Global namespace + +=== Types +[cols=2,separator=¦] +|=== +¦Name ¦Description +¦xref:A.adoc[`A`] ¦ + +¦xref:B.adoc[`B`] ¦ + +¦xref:C.adoc[`C`] ¦ + +¦xref:D.adoc[`D`] ¦ + +|=== + + +[#A] + +== A + + + +=== Synopsis + +Declared in header `` + +[source,cpp,subs="verbatim,macros,-callouts"] +---- +template +struct A; +---- + + + + + +[#B] + +== B + + + +=== Synopsis + +Declared in header `` + +[source,cpp,subs="verbatim,macros,-callouts"] +---- +template< + typename T, + typename U> +struct B; +---- + + + + + +[#C] + +== C + + + +=== Synopsis + +Declared in header `` + +[source,cpp,subs="verbatim,macros,-callouts"] +---- +template +using C = xref:A.adoc[A]; +---- + + + +[#D] + +== D + + + +=== Synopsis + +Declared in header `` + +[source,cpp,subs="verbatim,macros,-callouts"] +---- +template +struct D; +---- + +=== Types +[cols=2,separator=¦] +|=== +¦Name ¦Description +¦xref:D/E.adoc[`E`] ¦ + +|=== + + + +:relfileprefix: ../ +[#D-E] + +== xref:D.adoc[pass:[D]]::E + + + +=== Synopsis + +Declared in header `` + +[source,cpp,subs="verbatim,macros,-callouts"] +---- +template +using E = xref:B.adoc[B]; +---- + + + +Created with MrDocs diff --git a/test-files/golden-tests/attributes_1.adoc b/test-files/golden-tests/attributes_1.adoc new file mode 100644 index 000000000..3bf70e087 --- /dev/null +++ b/test-files/golden-tests/attributes_1.adoc @@ -0,0 +1,41 @@ += Reference +:mrdocs: + +[#index] + +== Global namespace + +=== Functions +[cols=2,separator=¦] +|=== +¦Name ¦Description +¦xref:f.adoc[`f`] ¦ + +|=== + + +[#f] + +== f + + + +=== Synopsis + +Declared in header `` + +[source,cpp,subs="verbatim,macros,-callouts"] +---- +bool +f(); +---- + + + + + + + + + +Created with MrDocs diff --git a/test-files/golden-tests/brief-1.adoc b/test-files/golden-tests/brief-1.adoc new file mode 100644 index 000000000..06470f561 --- /dev/null +++ b/test-files/golden-tests/brief-1.adoc @@ -0,0 +1,90 @@ += Reference +:mrdocs: + +[#index] + +== Global namespace + +=== Functions +[cols=2,separator=¦] +|=== +¦Name ¦Description +¦xref:f5.adoc[`f5`] ¦ + +brief +*bold* +it +continues to the line. + +¦xref:f6.adoc[`f6`] ¦ + +brief + +|=== + + +[#f5] + +== f5 + + +brief +*bold* +it +continues to the line. + + +=== Synopsis + +Declared in header `` + +[source,cpp,subs="verbatim,macros,-callouts"] +---- +void +f5(); +---- + + + + + + + + + +[#f6] + +== f6 + + +brief + + +=== Synopsis + +Declared in header `` + +[source,cpp,subs="verbatim,macros,-callouts"] +---- +void +f6(); +---- + +=== Description + + +many lined +*bold* +what will +happen? + + + + + + + + + + +Created with MrDocs diff --git a/test-files/golden-tests/brief-2.adoc b/test-files/golden-tests/brief-2.adoc new file mode 100644 index 000000000..ecb4684d2 --- /dev/null +++ b/test-files/golden-tests/brief-2.adoc @@ -0,0 +1,212 @@ += Reference +:mrdocs: + +[#index] + +== Global namespace + +=== Functions +[cols=2,separator=¦] +|=== +¦Name ¦Description +¦xref:f1.adoc[`f1`] ¦ + +brief + +¦xref:f2.adoc[`f2`] ¦ + +brief + +¦xref:f3.adoc[`f3`] ¦ + +brief + +¦xref:f4.adoc[`f4`] ¦ + +brief x + +¦xref:f5.adoc[`f5`] ¦ + +br +ief + +¦xref:f6.adoc[`f6`] ¦ + +br +ief + +|=== + + +[#f1] + +== f1 + + +brief + + +=== Synopsis + +Declared in header `` + +[source,cpp,subs="verbatim,macros,-callouts"] +---- +void +f1(); +---- + + + + + + + + + +[#f2] + +== f2 + + +brief + + +=== Synopsis + +Declared in header `` + +[source,cpp,subs="verbatim,macros,-callouts"] +---- +void +f2(); +---- + + + + + + + + + +[#f3] + +== f3 + + +brief + + +=== Synopsis + +Declared in header `` + +[source,cpp,subs="verbatim,macros,-callouts"] +---- +void +f3(); +---- + + + + + + + + + +[#f4] + +== f4 + + +brief x + + +=== Synopsis + +Declared in header `` + +[source,cpp,subs="verbatim,macros,-callouts"] +---- +void +f4(); +---- + +=== Description + + +br +ief + + + + + + + + + + +[#f5] + +== f5 + + +br +ief + + +=== Synopsis + +Declared in header `` + +[source,cpp,subs="verbatim,macros,-callouts"] +---- +void +f5(); +---- + + + + + + + + + +[#f6] + +== f6 + + +br +ief + + +=== Synopsis + +Declared in header `` + +[source,cpp,subs="verbatim,macros,-callouts"] +---- +void +f6(); +---- + +=== Description + + +desc + + + + + + + + + + +Created with MrDocs diff --git a/test-files/golden-tests/canonical_1.adoc b/test-files/golden-tests/canonical_1.adoc new file mode 100644 index 000000000..9a29d9f7c --- /dev/null +++ b/test-files/golden-tests/canonical_1.adoc @@ -0,0 +1,183 @@ += Reference +:mrdocs: + +[#index] + +== Global namespace + +=== Types +[cols=2,separator=¦] +|=== +¦Name ¦Description +¦xref:A.adoc[`A`] ¦ + +¦xref:B.adoc[`B`] ¦ + +¦xref:Ba.adoc[`Ba`] ¦ + +¦xref:Bx.adoc[`Bx`] ¦ + +¦xref:a.adoc[`a`] ¦ + +¦xref:b.adoc[`b`] ¦ + +¦xref:bA.adoc[`bA`] ¦ + +¦xref:ba.adoc[`ba`] ¦ + +|=== + + +[#B] + +== B + + + +=== Synopsis + +Declared in header `` + +[source,cpp,subs="verbatim,macros,-callouts"] +---- +struct B; +---- + + + + + +[#b] + +== b + + + +=== Synopsis + +Declared in header `` + +[source,cpp,subs="verbatim,macros,-callouts"] +---- +struct b; +---- + + + + + +[#A] + +== A + + + +=== Synopsis + +Declared in header `` + +[source,cpp,subs="verbatim,macros,-callouts"] +---- +struct A; +---- + + + + + +[#a] + +== a + + + +=== Synopsis + +Declared in header `` + +[source,cpp,subs="verbatim,macros,-callouts"] +---- +struct a; +---- + + + + + +[#Ba] + +== Ba + + + +=== Synopsis + +Declared in header `` + +[source,cpp,subs="verbatim,macros,-callouts"] +---- +struct Ba; +---- + + + + + +[#bA] + +== bA + + + +=== Synopsis + +Declared in header `` + +[source,cpp,subs="verbatim,macros,-callouts"] +---- +struct bA; +---- + + + + + +[#Bx] + +== Bx + + + +=== Synopsis + +Declared in header `` + +[source,cpp,subs="verbatim,macros,-callouts"] +---- +struct Bx; +---- + + + + + +[#ba] + +== ba + + + +=== Synopsis + +Declared in header `` + +[source,cpp,subs="verbatim,macros,-callouts"] +---- +struct ba; +---- + + + + + +Created with MrDocs diff --git a/test-files/golden-tests/class-template-partial-spec.adoc b/test-files/golden-tests/class-template-partial-spec.adoc new file mode 100644 index 000000000..aaf5985bb --- /dev/null +++ b/test-files/golden-tests/class-template-partial-spec.adoc @@ -0,0 +1,110 @@ += Reference +:mrdocs: + +[#index] + +== Global namespace + +=== Types +[cols=2,separator=¦] +|=== +¦Name ¦Description +¦xref:A.adoc[`A`] ¦ + +|=== + + +[#A] + +== A + + + +=== Synopsis + +Declared in header `` + +[source,cpp,subs="verbatim,macros,-callouts"] +---- +template +struct A; +---- + +=== Types +[cols=2,separator=¦] +|=== +¦Name ¦Description +¦xref:A/B-0a.adoc[`B`] ¦ + +¦xref:A/B-06.adoc[`B`] ¦ + +¦xref:A/B-04.adoc[`B`] ¦ + +|=== + + + +:relfileprefix: ../ +[#A-B-0a] + +== xref:A.adoc[pass:[A]]::B + + + +=== Synopsis + +Declared in header `` + +[source,cpp,subs="verbatim,macros,-callouts"] +---- +template< + typename U, + typename V> +struct B; +---- + + + + +:relfileprefix: ../ +[#A-B-06] + +== xref:A.adoc[pass:[A]]::B + + + +=== Synopsis + +Declared in header `` + +[source,cpp,subs="verbatim,macros,-callouts"] +---- +template +struct xref:A/B-0a.adoc[pass:[B]]; +---- + + + + +:relfileprefix: ../ +[#A-B-04] + +== xref:A.adoc[pass:[A]]::B + + + +=== Synopsis + +Declared in header `` + +[source,cpp,subs="verbatim,macros,-callouts"] +---- +template<> +struct xref:A/B-0a.adoc[pass:[B]]; +---- + + + + + +Created with MrDocs diff --git a/test-files/golden-tests/class-template-spec.adoc b/test-files/golden-tests/class-template-spec.adoc new file mode 100644 index 000000000..3002e6520 --- /dev/null +++ b/test-files/golden-tests/class-template-spec.adoc @@ -0,0 +1,494 @@ += Reference +:mrdocs: + +[#index] + +== Global namespace + +=== Types +[cols=2,separator=¦] +|=== +¦Name ¦Description +¦xref:A-0e.adoc[`A`] ¦ + +¦xref:A-00.adoc[`A`] ¦ + +¦xref:A-0c.adoc[`A`] ¦ + +¦xref:B-00.adoc[`B`] ¦ + +¦xref:B-07.adoc[`B`] ¦ + +¦xref:B-06.adoc[`B`] ¦ + +¦xref:C-0f.adoc[`C`] ¦ + +¦xref:C-0a.adoc[`C`] ¦ + +¦xref:C-0e.adoc[`C`] ¦ + +|=== + + +[#A-0e] + +== A + + + +=== Synopsis + +Declared in header `` + +[source,cpp,subs="verbatim,macros,-callouts"] +---- +template +struct A; +---- + +=== Member Functions +[cols=2,separator=¦] +|=== +¦Name ¦Description +¦xref:A-0e/f.adoc[`f`] ¦ + +|=== + + + +:relfileprefix: ../ +[#A-0e-f] + +== xref:A-0e.adoc[pass:[A]]::f + + + +=== Synopsis + +Declared in header `` + +[source,cpp,subs="verbatim,macros,-callouts"] +---- +void +f(); +---- + + + + + + + + + +[#A-00] + +== A + + + +=== Synopsis + +Declared in header `` + +[source,cpp,subs="verbatim,macros,-callouts"] +---- +template<> +struct xref:A-0e.adoc[pass:[A]]; +---- + +=== Member Functions +[cols=2,separator=¦] +|=== +¦Name ¦Description +¦xref:A-00/g.adoc[`g`] ¦ + +|=== + + + +:relfileprefix: ../ +[#A-00-g] + +== xref:A-00.adoc[pass:[A]]::g + + + +=== Synopsis + +Declared in header `` + +[source,cpp,subs="verbatim,macros,-callouts"] +---- +void +g(); +---- + + + + + + + + + +[#A-0c] + +== A + + + +=== Synopsis + +Declared in header `` + +[source,cpp,subs="verbatim,macros,-callouts"] +---- +template<> +struct xref:A-0e.adoc[pass:[A]]; +---- + +=== Member Functions +[cols=2,separator=¦] +|=== +¦Name ¦Description +¦xref:A-0c/h.adoc[`h`] ¦ + +|=== + + + +:relfileprefix: ../ +[#A-0c-h] + +== xref:A-0c.adoc[pass:[A]]::h + + + +=== Synopsis + +Declared in header `` + +[source,cpp,subs="verbatim,macros,-callouts"] +---- +void +h(); +---- + + + + + + + + + +[#B-00] + +== B + + + +=== Synopsis + +Declared in header `` + +[source,cpp,subs="verbatim,macros,-callouts"] +---- +template +struct B; +---- + +=== Member Functions +[cols=2,separator=¦] +|=== +¦Name ¦Description +¦xref:B-00/f.adoc[`f`] ¦ + +|=== + + + +:relfileprefix: ../ +[#B-00-f] + +== xref:B-00.adoc[pass:[B]]::f + + + +=== Synopsis + +Declared in header `` + +[source,cpp,subs="verbatim,macros,-callouts"] +---- +void +f(); +---- + + + + + + + + + +[#B-07] + +== B + + + +=== Synopsis + +Declared in header `` + +[source,cpp,subs="verbatim,macros,-callouts"] +---- +template +struct xref:B-00.adoc[pass:[B]]; +---- + +=== Member Functions +[cols=2,separator=¦] +|=== +¦Name ¦Description +¦xref:B-07/g.adoc[`g`] ¦ + +|=== + + + +:relfileprefix: ../ +[#B-07-g] + +== xref:B-07.adoc[pass:[B]]::g + + + +=== Synopsis + +Declared in header `` + +[source,cpp,subs="verbatim,macros,-callouts"] +---- +void +g(); +---- + + + + + + + + + +[#B-06] + +== B + + + +=== Synopsis + +Declared in header `` + +[source,cpp,subs="verbatim,macros,-callouts"] +---- +template +struct xref:B-00.adoc[pass:[B]]; +---- + +=== Member Functions +[cols=2,separator=¦] +|=== +¦Name ¦Description +¦xref:B-06/h.adoc[`h`] ¦ + +|=== + + + +:relfileprefix: ../ +[#B-06-h] + +== xref:B-06.adoc[pass:[B]]::h + + + +=== Synopsis + +Declared in header `` + +[source,cpp,subs="verbatim,macros,-callouts"] +---- +void +h(); +---- + + + + + + + + + +[#C-0f] + +== C + + + +=== Synopsis + +Declared in header `` + +[source,cpp,subs="verbatim,macros,-callouts"] +---- +template< + typename T, + typename U> +struct C; +---- + +=== Member Functions +[cols=2,separator=¦] +|=== +¦Name ¦Description +¦xref:C-0f/f.adoc[`f`] ¦ + +|=== + + + +:relfileprefix: ../ +[#C-0f-f] + +== xref:C-0f.adoc[pass:[C]]::f + + + +=== Synopsis + +Declared in header `` + +[source,cpp,subs="verbatim,macros,-callouts"] +---- +void +f(); +---- + + + + + + + + + +[#C-0a] + +== C + + + +=== Synopsis + +Declared in header `` + +[source,cpp,subs="verbatim,macros,-callouts"] +---- +template<> +struct xref:C-0f.adoc[pass:[C]]; +---- + +=== Member Functions +[cols=2,separator=¦] +|=== +¦Name ¦Description +¦xref:C-0a/g.adoc[`g`] ¦ + +|=== + + + +:relfileprefix: ../ +[#C-0a-g] + +== xref:C-0a.adoc[pass:[C]]::g + + + +=== Synopsis + +Declared in header `` + +[source,cpp,subs="verbatim,macros,-callouts"] +---- +void +g(); +---- + + + + + + + + + +[#C-0e] + +== C + + + +=== Synopsis + +Declared in header `` + +[source,cpp,subs="verbatim,macros,-callouts"] +---- +template +struct xref:C-0f.adoc[pass:[C]]; +---- + +=== Member Functions +[cols=2,separator=¦] +|=== +¦Name ¦Description +¦xref:C-0e/h.adoc[`h`] ¦ + +|=== + + + +:relfileprefix: ../ +[#C-0e-h] + +== xref:C-0e.adoc[pass:[C]]::h + + + +=== Synopsis + +Declared in header `` + +[source,cpp,subs="verbatim,macros,-callouts"] +---- +void +h(); +---- + + + + + + + + + +Created with MrDocs diff --git a/test-files/golden-tests/class-template-specializations-1.adoc b/test-files/golden-tests/class-template-specializations-1.adoc new file mode 100644 index 000000000..3098ea9e8 --- /dev/null +++ b/test-files/golden-tests/class-template-specializations-1.adoc @@ -0,0 +1,2069 @@ += Reference +:mrdocs: + +[#index] + +== Global namespace + +=== Types +[cols=2,separator=¦] +|=== +¦Name ¦Description +¦xref:R0.adoc[`R0`] ¦ + +¦xref:R1.adoc[`R1`] ¦ + +¦xref:R10.adoc[`R10`] ¦ + +¦xref:R11.adoc[`R11`] ¦ + +¦xref:R12.adoc[`R12`] ¦ + +¦xref:R13.adoc[`R13`] ¦ + +¦xref:R14.adoc[`R14`] ¦ + +¦xref:R15.adoc[`R15`] ¦ + +¦xref:R16.adoc[`R16`] ¦ + +¦xref:R17.adoc[`R17`] ¦ + +¦xref:R18.adoc[`R18`] ¦ + +¦xref:R19.adoc[`R19`] ¦ + +¦xref:R2.adoc[`R2`] ¦ + +¦xref:R20.adoc[`R20`] ¦ + +¦xref:R21.adoc[`R21`] ¦ + +¦xref:R22.adoc[`R22`] ¦ + +¦xref:R23.adoc[`R23`] ¦ + +¦xref:R24.adoc[`R24`] ¦ + +¦xref:R25.adoc[`R25`] ¦ + +¦xref:R26.adoc[`R26`] ¦ + +¦xref:R27.adoc[`R27`] ¦ + +¦xref:R28.adoc[`R28`] ¦ + +¦xref:R29.adoc[`R29`] ¦ + +¦xref:R3.adoc[`R3`] ¦ + +¦xref:R30.adoc[`R30`] ¦ + +¦xref:R31.adoc[`R31`] ¦ + +¦xref:R32.adoc[`R32`] ¦ + +¦xref:R33.adoc[`R33`] ¦ + +¦xref:R34.adoc[`R34`] ¦ + +¦xref:R35.adoc[`R35`] ¦ + +¦xref:R36.adoc[`R36`] ¦ + +¦xref:R37.adoc[`R37`] ¦ + +¦xref:R38.adoc[`R38`] ¦ + +¦xref:R39.adoc[`R39`] ¦ + +¦xref:R4.adoc[`R4`] ¦ + +¦xref:R40.adoc[`R40`] ¦ + +¦xref:R41.adoc[`R41`] ¦ + +¦xref:R42.adoc[`R42`] ¦ + +¦xref:R43.adoc[`R43`] ¦ + +¦xref:R44.adoc[`R44`] ¦ + +¦xref:R45.adoc[`R45`] ¦ + +¦xref:R46.adoc[`R46`] ¦ + +¦xref:R47.adoc[`R47`] ¦ + +¦xref:R48.adoc[`R48`] ¦ + +¦xref:R5.adoc[`R5`] ¦ + +¦xref:R6.adoc[`R6`] ¦ + +¦xref:R7.adoc[`R7`] ¦ + +¦xref:R8.adoc[`R8`] ¦ + +¦xref:R9.adoc[`R9`] ¦ + +¦xref:S0-02.adoc[`S0<1, int*>`] ¦ + +¦xref:S0-0c4.adoc[`S0<1, T*>`] ¦ + +¦xref:S0-0be.adoc[`S0<0>`] ¦ + +¦xref:S0-0cf.adoc[`S0`] ¦ + +|=== + + +[#S0-0cf] + +== S0 + + + +=== Synopsis + +Declared in header `` + +[source,cpp,subs="verbatim,macros,-callouts"] +---- +template< + int I, + typename T = void> +struct S0; +---- + +=== Types +[cols=2,separator=¦] +|=== +¦Name ¦Description +¦xref:S0-0cf/S1.adoc[`S1`] ¦ + +¦xref:S0-0cf/S5.adoc[`S5`] ¦ + +|=== +=== Member Functions +[cols=2,separator=¦] +|=== +¦Name ¦Description +¦xref:S0-0cf/f0.adoc[`f0`] ¦ + +|=== + + + +:relfileprefix: ../ +[#S0-0cf-f0] + +== xref:S0-0cf.adoc[pass:[S0]]::f0 + + + +=== Synopsis + +Declared in header `` + +[source,cpp,subs="verbatim,macros,-callouts"] +---- +void +f0(); +---- + + + + + + + + +:relfileprefix: ../ +[#S0-0cf-S1] + +== xref:S0-0cf.adoc[pass:[S0]]::S1 + + + +=== Synopsis + +Declared in header `` + +[source,cpp,subs="verbatim,macros,-callouts"] +---- +struct S1; +---- + +=== Types +[cols=2,separator=¦] +|=== +¦Name ¦Description +¦xref:S0-0cf/S1/S2.adoc[`S2`] ¦ + +|=== +=== Member Functions +[cols=2,separator=¦] +|=== +¦Name ¦Description +¦xref:S0-0cf/S1/f1.adoc[`f1`] ¦ + +|=== + + + +:relfileprefix: ../../ +[#S0-0cf-S1-f1] + +== xref:S0-0cf.adoc[pass:[S0]]::xref:S0-0cf/S1.adoc[pass:[S1]]::f1 + + + +=== Synopsis + +Declared in header `` + +[source,cpp,subs="verbatim,macros,-callouts"] +---- +void +f1(); +---- + + + + + + + + +:relfileprefix: ../../ +[#S0-0cf-S1-S2] + +== xref:S0-0cf.adoc[pass:[S0]]::xref:S0-0cf/S1.adoc[pass:[S1]]::S2 + + + +=== Synopsis + +Declared in header `` + +[source,cpp,subs="verbatim,macros,-callouts"] +---- +template< + int J, + typename U = void> +struct S2; +---- + +=== Types +[cols=2,separator=¦] +|=== +¦Name ¦Description +¦xref:S0-0cf/S1/S2/S3.adoc[`S3`] ¦ + +¦xref:S0-0cf/S1/S2/S4.adoc[`S4`] ¦ + +|=== +=== Member Functions +[cols=2,separator=¦] +|=== +¦Name ¦Description +¦xref:S0-0cf/S1/S2/f2.adoc[`f2`] ¦ + +|=== + + + +:relfileprefix: ../../../ +[#S0-0cf-S1-S2-f2] + +== xref:S0-0cf.adoc[pass:[S0]]::xref:S0-0cf/S1.adoc[pass:[S1]]::xref:S0-0cf/S1/S2.adoc[pass:[S2]]::f2 + + + +=== Synopsis + +Declared in header `` + +[source,cpp,subs="verbatim,macros,-callouts"] +---- +void +f2(); +---- + + + + + + + + +:relfileprefix: ../../../ +[#S0-0cf-S1-S2-S3] + +== xref:S0-0cf.adoc[pass:[S0]]::xref:S0-0cf/S1.adoc[pass:[S1]]::xref:S0-0cf/S1/S2.adoc[pass:[S2]]::S3 + + + +=== Synopsis + +Declared in header `` + +[source,cpp,subs="verbatim,macros,-callouts"] +---- +struct S3; +---- + +=== Member Functions +[cols=2,separator=¦] +|=== +¦Name ¦Description +¦xref:S0-0cf/S1/S2/S3/f3.adoc[`f3`] ¦ + +|=== + + + +:relfileprefix: ../../../../ +[#S0-0cf-S1-S2-S3-f3] + +== xref:S0-0cf.adoc[pass:[S0]]::xref:S0-0cf/S1.adoc[pass:[S1]]::xref:S0-0cf/S1/S2.adoc[pass:[S2]]::xref:S0-0cf/S1/S2/S3.adoc[pass:[S3]]::f3 + + + +=== Synopsis + +Declared in header `` + +[source,cpp,subs="verbatim,macros,-callouts"] +---- +void +f3(); +---- + + + + + + + + +:relfileprefix: ../../../ +[#S0-0cf-S1-S2-S4] + +== xref:S0-0cf.adoc[pass:[S0]]::xref:S0-0cf/S1.adoc[pass:[S1]]::xref:S0-0cf/S1/S2.adoc[pass:[S2]]::S4 + + + +=== Synopsis + +Declared in header `` + +[source,cpp,subs="verbatim,macros,-callouts"] +---- +template< + int K, + typename V = void> +struct S4; +---- + +=== Member Functions +[cols=2,separator=¦] +|=== +¦Name ¦Description +¦xref:S0-0cf/S1/S2/S4/f4.adoc[`f4`] ¦ + +|=== + + + +:relfileprefix: ../../../../ +[#S0-0cf-S1-S2-S4-f4] + +== xref:S0-0cf.adoc[pass:[S0]]::xref:S0-0cf/S1.adoc[pass:[S1]]::xref:S0-0cf/S1/S2.adoc[pass:[S2]]::xref:S0-0cf/S1/S2/S4.adoc[pass:[S4]]::f4 + + + +=== Synopsis + +Declared in header `` + +[source,cpp,subs="verbatim,macros,-callouts"] +---- +void +f4(); +---- + + + + + + + + +:relfileprefix: ../ +[#S0-0cf-S5] + +== xref:S0-0cf.adoc[pass:[S0]]::S5 + + + +=== Synopsis + +Declared in header `` + +[source,cpp,subs="verbatim,macros,-callouts"] +---- +template< + int J, + typename U = void> +struct S5; +---- + +=== Types +[cols=2,separator=¦] +|=== +¦Name ¦Description +¦xref:S0-0cf/S5/S6.adoc[`S6`] ¦ + +|=== +=== Member Functions +[cols=2,separator=¦] +|=== +¦Name ¦Description +¦xref:S0-0cf/S5/f5.adoc[`f5`] ¦ + +|=== + + + +:relfileprefix: ../../ +[#S0-0cf-S5-f5] + +== xref:S0-0cf.adoc[pass:[S0]]::xref:S0-0cf/S5.adoc[pass:[S5]]::f5 + + + +=== Synopsis + +Declared in header `` + +[source,cpp,subs="verbatim,macros,-callouts"] +---- +void +f5(); +---- + + + + + + + + +:relfileprefix: ../../ +[#S0-0cf-S5-S6] + +== xref:S0-0cf.adoc[pass:[S0]]::xref:S0-0cf/S5.adoc[pass:[S5]]::S6 + + + +=== Synopsis + +Declared in header `` + +[source,cpp,subs="verbatim,macros,-callouts"] +---- +struct S6; +---- + +=== Types +[cols=2,separator=¦] +|=== +¦Name ¦Description +¦xref:S0-0cf/S5/S6/S7.adoc[`S7`] ¦ + +|=== +=== Member Functions +[cols=2,separator=¦] +|=== +¦Name ¦Description +¦xref:S0-0cf/S5/S6/f6.adoc[`f6`] ¦ + +|=== + + + +:relfileprefix: ../../../ +[#S0-0cf-S5-S6-f6] + +== xref:S0-0cf.adoc[pass:[S0]]::xref:S0-0cf/S5.adoc[pass:[S5]]::xref:S0-0cf/S5/S6.adoc[pass:[S6]]::f6 + + + +=== Synopsis + +Declared in header `` + +[source,cpp,subs="verbatim,macros,-callouts"] +---- +void +f6(); +---- + + + + + + + + +:relfileprefix: ../../../ +[#S0-0cf-S5-S6-S7] + +== xref:S0-0cf.adoc[pass:[S0]]::xref:S0-0cf/S5.adoc[pass:[S5]]::xref:S0-0cf/S5/S6.adoc[pass:[S6]]::S7 + + + +=== Synopsis + +Declared in header `` + +[source,cpp,subs="verbatim,macros,-callouts"] +---- +template< + int K, + typename V = void> +struct S7; +---- + +=== Types +[cols=2,separator=¦] +|=== +¦Name ¦Description +¦xref:S0-0cf/S5/S6/S7/S8.adoc[`S8`] ¦ + +¦xref:S0-0cf/S5/S6/S7/S9.adoc[`S9`] ¦ + +|=== +=== Member Functions +[cols=2,separator=¦] +|=== +¦Name ¦Description +¦xref:S0-0cf/S5/S6/S7/f7.adoc[`f7`] ¦ + +|=== + + + +:relfileprefix: ../../../../ +[#S0-0cf-S5-S6-S7-f7] + +== xref:S0-0cf.adoc[pass:[S0]]::xref:S0-0cf/S5.adoc[pass:[S5]]::xref:S0-0cf/S5/S6.adoc[pass:[S6]]::xref:S0-0cf/S5/S6/S7.adoc[pass:[S7]]::f7 + + + +=== Synopsis + +Declared in header `` + +[source,cpp,subs="verbatim,macros,-callouts"] +---- +void +f7(); +---- + + + + + + + + +:relfileprefix: ../../../../ +[#S0-0cf-S5-S6-S7-S8] + +== xref:S0-0cf.adoc[pass:[S0]]::xref:S0-0cf/S5.adoc[pass:[S5]]::xref:S0-0cf/S5/S6.adoc[pass:[S6]]::xref:S0-0cf/S5/S6/S7.adoc[pass:[S7]]::S8 + + + +=== Synopsis + +Declared in header `` + +[source,cpp,subs="verbatim,macros,-callouts"] +---- +struct S8; +---- + +=== Member Functions +[cols=2,separator=¦] +|=== +¦Name ¦Description +¦xref:S0-0cf/S5/S6/S7/S8/f8.adoc[`f8`] ¦ + +|=== + + + +:relfileprefix: ../../../../../ +[#S0-0cf-S5-S6-S7-S8-f8] + +== xref:S0-0cf.adoc[pass:[S0]]::xref:S0-0cf/S5.adoc[pass:[S5]]::xref:S0-0cf/S5/S6.adoc[pass:[S6]]::xref:S0-0cf/S5/S6/S7.adoc[pass:[S7]]::xref:S0-0cf/S5/S6/S7/S8.adoc[pass:[S8]]::f8 + + + +=== Synopsis + +Declared in header `` + +[source,cpp,subs="verbatim,macros,-callouts"] +---- +void +f8(); +---- + + + + + + + + +:relfileprefix: ../../../../ +[#S0-0cf-S5-S6-S7-S9] + +== xref:S0-0cf.adoc[pass:[S0]]::xref:S0-0cf/S5.adoc[pass:[S5]]::xref:S0-0cf/S5/S6.adoc[pass:[S6]]::xref:S0-0cf/S5/S6/S7.adoc[pass:[S7]]::S9 + + + +=== Synopsis + +Declared in header `` + +[source,cpp,subs="verbatim,macros,-callouts"] +---- +template< + int L, + typename W = void> +struct S9; +---- + +=== Member Functions +[cols=2,separator=¦] +|=== +¦Name ¦Description +¦xref:S0-0cf/S5/S6/S7/S9/f9.adoc[`f9`] ¦ + +|=== + + + +:relfileprefix: ../../../../../ +[#S0-0cf-S5-S6-S7-S9-f9] + +== xref:S0-0cf.adoc[pass:[S0]]::xref:S0-0cf/S5.adoc[pass:[S5]]::xref:S0-0cf/S5/S6.adoc[pass:[S6]]::xref:S0-0cf/S5/S6/S7.adoc[pass:[S7]]::xref:S0-0cf/S5/S6/S7/S9.adoc[pass:[S9]]::f9 + + + +=== Synopsis + +Declared in header `` + +[source,cpp,subs="verbatim,macros,-callouts"] +---- +void +f9(); +---- + + + + + + + + + +[#S0-0be] + +== S0 + + + +=== Synopsis + +Declared in header `` + +[source,cpp,subs="verbatim,macros,-callouts"] +---- +template<> +struct xref:S0-0cf.adoc[pass:[S0]]<0>; +---- + + + + + +[#S0-0c4] + +== S0 + + + +=== Synopsis + +Declared in header `` + +[source,cpp,subs="verbatim,macros,-callouts"] +---- +template +struct xref:S0-0cf.adoc[pass:[S0]]<1, T*>; +---- + + + + + +[#S0-02] + +== S0 + + + +=== Synopsis + +Declared in header `` + +[source,cpp,subs="verbatim,macros,-callouts"] +---- +template<> +struct xref:S0-0cf.adoc[pass:[S0]]<1, int*>; +---- + + + + + +[#S0-09c] + + +[#S0-073] + + +[#S0-0a1] + + +[#S0-07e] + + +[#S0-0a3] + + +[#S0-08] + + +[#S0-0e] + + +[#S0-09e4] + + +[#S0-07a] + + +[#S0-0a7] + + +[#S0-031] + + +[#S0-05] + + +[#S0-0a2] + + +[#S0-09e2] + + +[#S0-01] + + +[#S0-09ee] + + +[#S0-033] + + +[#S0-06] + + +[#S0-0ba] + + +[#R0] + +== R0 + + + +=== Synopsis + +Declared in header `` + +[source,cpp,subs="verbatim,macros,-callouts"] +---- +struct R0 + : xref:S0-0cf.adoc[S0]<-1>; +---- + +=== Types +[cols=2,separator=¦] +|=== +¦Name ¦Description +¦xref:S0-0cf/S1.adoc[`S1`] ¦ + +¦xref:S0-0cf/S5.adoc[`S5`] ¦ + +|=== +=== Member Functions +[cols=2,separator=¦] +|=== +¦Name ¦Description +¦xref:S0-0cf/f0.adoc[`f0`] ¦ + +|=== + + + + +[#R1] + +== R1 + + + +=== Synopsis + +Declared in header `` + +[source,cpp,subs="verbatim,macros,-callouts"] +---- +struct R1 + : xref:S0-0be.adoc[S0]<0>; +---- + + + + + +[#R2] + +== R2 + + + +=== Synopsis + +Declared in header `` + +[source,cpp,subs="verbatim,macros,-callouts"] +---- +struct R2 + : xref:S0-0c4.adoc[S0]<1, void*>; +---- + + + + + +[#R3] + +== R3 + + + +=== Synopsis + +Declared in header `` + +[source,cpp,subs="verbatim,macros,-callouts"] +---- +struct R3 + : xref:S0-02.adoc[S0]<1, int*>; +---- + + + + + +[#R4] + +== R4 + + + +=== Synopsis + +Declared in header `` + +[source,cpp,subs="verbatim,macros,-callouts"] +---- +struct R4 + : xref:S0-0cf.adoc[S0]<2>::xref:S0-09c/S1.adoc[S1]; +---- + + + + + +[#R5] + +== R5 + + + +=== Synopsis + +Declared in header `` + +[source,cpp,subs="verbatim,macros,-callouts"] +---- +struct R5 + : xref:S0-0cf.adoc[S0]<3>::xref:S0-0cf/S1.adoc[S1]::xref:S0-073/S1/S2.adoc[S2]<-1>; +---- + + + + + +[#R6] + +== R6 + + + +=== Synopsis + +Declared in header `` + +[source,cpp,subs="verbatim,macros,-callouts"] +---- +struct R6 + : xref:S0-0cf.adoc[S0]<4>::xref:S0-0cf/S1.adoc[S1]::xref:S0-0a1/S1/S2.adoc[S2]<5>; +---- + + + + + +[#R7] + +== R7 + + + +=== Synopsis + +Declared in header `` + +[source,cpp,subs="verbatim,macros,-callouts"] +---- +struct R7 + : xref:S0-0cf.adoc[S0]<6>::xref:S0-0cf/S1.adoc[S1]::xref:S0-07e/S1/S2-06.adoc[S2]<7, void*>; +---- + + + + + +[#R8] + +== R8 + + + +=== Synopsis + +Declared in header `` + +[source,cpp,subs="verbatim,macros,-callouts"] +---- +struct R8 + : xref:S0-0cf.adoc[S0]<6>::xref:S0-0cf/S1.adoc[S1]::xref:S0-07e/S1/S2-07.adoc[S2]<7, int*>; +---- + + + + + +[#R9] + +== R9 + + + +=== Synopsis + +Declared in header `` + +[source,cpp,subs="verbatim,macros,-callouts"] +---- +struct R9 + : xref:S0-0cf.adoc[S0]<8>::xref:S0-0cf/S1.adoc[S1]::xref:S0-0cf/S1/S2.adoc[S2]<9>::xref:S0-0a3/S1/S2/S3.adoc[S3]; +---- + + + + + +[#R10] + +== R10 + + + +=== Synopsis + +Declared in header `` + +[source,cpp,subs="verbatim,macros,-callouts"] +---- +struct R10 + : xref:S0-0cf.adoc[S0]<10>::xref:S0-0cf/S1.adoc[S1]::xref:S0-0cf/S1/S2.adoc[S2]<11>::xref:S0-08/S1/S2/S4.adoc[S4]<-1>; +---- + + + + + +[#R11] + +== R11 + + + +=== Synopsis + +Declared in header `` + +[source,cpp,subs="verbatim,macros,-callouts"] +---- +struct R11 + : xref:S0-0cf.adoc[S0]<12>::xref:S0-0cf/S1.adoc[S1]::xref:S0-0cf/S1/S2.adoc[S2]<13>::xref:S0-0e/S1/S2/S4.adoc[S4]<14>; +---- + + + + + +[#R12] + +== R12 + + + +=== Synopsis + +Declared in header `` + +[source,cpp,subs="verbatim,macros,-callouts"] +---- +struct R12 + : xref:S0-0cf.adoc[S0]<15>::xref:S0-0cf/S1.adoc[S1]::xref:S0-0cf/S1/S2.adoc[S2]<16>::xref:S0-09e4/S1/S2/S4-07.adoc[S4]<17, void*>; +---- + + + + + +[#R13] + +== R13 + + + +=== Synopsis + +Declared in header `` + +[source,cpp,subs="verbatim,macros,-callouts"] +---- +struct R13 + : xref:S0-0cf.adoc[S0]<15>::xref:S0-0cf/S1.adoc[S1]::xref:S0-0cf/S1/S2.adoc[S2]<16>::xref:S0-09e4/S1/S2/S4-02.adoc[S4]<17, int*>; +---- + + + + + +[#R14] + +== R14 + + + +=== Synopsis + +Declared in header `` + +[source,cpp,subs="verbatim,macros,-callouts"] +---- +struct R14 + : xref:S0-0cf.adoc[S0]<18>::xref:S0-07a/S5.adoc[S5]<-1>; +---- + + + + + +[#R15] + +== R15 + + + +=== Synopsis + +Declared in header `` + +[source,cpp,subs="verbatim,macros,-callouts"] +---- +struct R15 + : xref:S0-0cf.adoc[S0]<19>::xref:S0-0a7/S5.adoc[S5]<20>; +---- + + + + + +[#R16] + +== R16 + + + +=== Synopsis + +Declared in header `` + +[source,cpp,subs="verbatim,macros,-callouts"] +---- +struct R16 + : xref:S0-0cf.adoc[S0]<21>::xref:S0-031/S5-0b.adoc[S5]<22, void*>; +---- + + + + + +[#R17] + +== R17 + + + +=== Synopsis + +Declared in header `` + +[source,cpp,subs="verbatim,macros,-callouts"] +---- +struct R17 + : xref:S0-0cf.adoc[S0]<21>::xref:S0-031/S5-03.adoc[S5]<22, int*>; +---- + + + + + +[#R18] + +== R18 + + + +=== Synopsis + +Declared in header `` + +[source,cpp,subs="verbatim,macros,-callouts"] +---- +struct R18 + : xref:S0-0cf.adoc[S0]<23>::xref:S0-0cf/S5.adoc[S5]<24>::xref:S0-05/S5/S6.adoc[S6]; +---- + + + + + +[#R19] + +== R19 + + + +=== Synopsis + +Declared in header `` + +[source,cpp,subs="verbatim,macros,-callouts"] +---- +struct R19 + : xref:S0-0cf.adoc[S0]<25>::xref:S0-0cf/S5.adoc[S5]<26>::xref:S0-0cf/S5/S6.adoc[S6]::xref:S0-0a2/S5/S6/S7.adoc[S7]<-1>; +---- + + + + + +[#R20] + +== R20 + + + +=== Synopsis + +Declared in header `` + +[source,cpp,subs="verbatim,macros,-callouts"] +---- +struct R20 + : xref:S0-0cf.adoc[S0]<27>::xref:S0-0cf/S5.adoc[S5]<28>::xref:S0-0cf/S5/S6.adoc[S6]::xref:S0-09e2/S5/S6/S7-0a.adoc[S7]<29, void*>; +---- + + + + + +[#R21] + +== R21 + + + +=== Synopsis + +Declared in header `` + +[source,cpp,subs="verbatim,macros,-callouts"] +---- +struct R21 + : xref:S0-0cf.adoc[S0]<27>::xref:S0-0cf/S5.adoc[S5]<28>::xref:S0-0cf/S5/S6.adoc[S6]::xref:S0-09e2/S5/S6/S7-0d.adoc[S7]<29, int*>; +---- + + + + + +[#R22] + +== R22 + + + +=== Synopsis + +Declared in header `` + +[source,cpp,subs="verbatim,macros,-callouts"] +---- +struct R22 + : xref:S0-0cf.adoc[S0]<30>::xref:S0-0cf/S5.adoc[S5]<31>::xref:S0-0cf/S5/S6.adoc[S6]::xref:S0-01/S5/S6/S7.adoc[S7]<32>; +---- + + + + + +[#R23] + +== R23 + + + +=== Synopsis + +Declared in header `` + +[source,cpp,subs="verbatim,macros,-callouts"] +---- +struct R23 + : xref:S0-0cf.adoc[S0]<33>::xref:S0-0cf/S5.adoc[S5]<34>::xref:S0-0cf/S5/S6.adoc[S6]::xref:S0-0cf/S5/S6/S7.adoc[S7]<35>::xref:S0-09ee/S5/S6/S7/S8.adoc[S8]; +---- + + + + + +[#R24] + +== R24 + + + +=== Synopsis + +Declared in header `` + +[source,cpp,subs="verbatim,macros,-callouts"] +---- +struct R24 + : xref:S0-0cf.adoc[S0]<36>::xref:S0-0cf/S5.adoc[S5]<37>::xref:S0-0cf/S5/S6.adoc[S6]::xref:S0-0cf/S5/S6/S7.adoc[S7]<38>::xref:S0-033/S5/S6/S7/S9.adoc[S9]<-1>; +---- + + + + + +[#R25] + +== R25 + + + +=== Synopsis + +Declared in header `` + +[source,cpp,subs="verbatim,macros,-callouts"] +---- +struct R25 + : xref:S0-0cf.adoc[S0]<39>::xref:S0-0cf/S5.adoc[S5]<40>::xref:S0-0cf/S5/S6.adoc[S6]::xref:S0-0cf/S5/S6/S7.adoc[S7]<41>::xref:S0-06/S5/S6/S7/S9-00.adoc[S9]<42, void*>; +---- + + + + + +[#R26] + +== R26 + + + +=== Synopsis + +Declared in header `` + +[source,cpp,subs="verbatim,macros,-callouts"] +---- +struct R26 + : xref:S0-0cf.adoc[S0]<39>::xref:S0-0cf/S5.adoc[S5]<40>::xref:S0-0cf/S5/S6.adoc[S6]::xref:S0-0cf/S5/S6/S7.adoc[S7]<41>::xref:S0-06/S5/S6/S7/S9-08.adoc[S9]<42, int*>; +---- + + + + + +[#R27] + +== R27 + + + +=== Synopsis + +Declared in header `` + +[source,cpp,subs="verbatim,macros,-callouts"] +---- +struct R27 + : xref:S0-0cf.adoc[S0]<43>::xref:S0-0cf/S5.adoc[S5]<44>::xref:S0-0cf/S5/S6.adoc[S6]::xref:S0-0cf/S5/S6/S7.adoc[S7]<45>::xref:S0-0ba/S5/S6/S7/S9.adoc[S9]<46>; +---- + + + + + +[#R28] + +== R28 + + + +=== Synopsis + +Declared in header `` + +[source,cpp,subs="verbatim,macros,-callouts"] +---- +struct R28 + : xref:S0-0cf.adoc[S0]<0, bool>; +---- + +=== Types +[cols=2,separator=¦] +|=== +¦Name ¦Description +¦xref:S0-0cf/S1.adoc[`S1`] ¦ + +¦xref:S0-0cf/S5.adoc[`S5`] ¦ + +|=== +=== Member Functions +[cols=2,separator=¦] +|=== +¦Name ¦Description +¦xref:S0-0cf/f0.adoc[`f0`] ¦ + +|=== + + + + +[#R29] + +== R29 + + + +=== Synopsis + +Declared in header `` + +[source,cpp,subs="verbatim,macros,-callouts"] +---- +struct R29 + : xref:S0-0cf.adoc[S0]<1, int>; +---- + +=== Types +[cols=2,separator=¦] +|=== +¦Name ¦Description +¦xref:S0-0cf/S1.adoc[`S1`] ¦ + +¦xref:S0-0cf/S5.adoc[`S5`] ¦ + +|=== +=== Member Functions +[cols=2,separator=¦] +|=== +¦Name ¦Description +¦xref:S0-0cf/f0.adoc[`f0`] ¦ + +|=== + + + + +[#R30] + +== R30 + + + +=== Synopsis + +Declared in header `` + +[source,cpp,subs="verbatim,macros,-callouts"] +---- +struct R30 + : xref:S0-0cf.adoc[S0]<2, bool>::xref:S0-0cf/S1.adoc[S1]; +---- + +=== Types +[cols=2,separator=¦] +|=== +¦Name ¦Description +¦xref:S0-0cf/S1/S2.adoc[`S2`] ¦ + +|=== +=== Member Functions +[cols=2,separator=¦] +|=== +¦Name ¦Description +¦xref:S0-0cf/S1/f1.adoc[`f1`] ¦ + +|=== + + + + +[#R31] + +== R31 + + + +=== Synopsis + +Declared in header `` + +[source,cpp,subs="verbatim,macros,-callouts"] +---- +template< + int I, + typename T> +struct R31 + : xref:S0-0cf.adoc[S0]<3, bool>::xref:S0-0cf/S1.adoc[S1]::xref:S0-0cf/S1/S2.adoc[S2]; +---- + +=== Types +[cols=2,separator=¦] +|=== +¦Name ¦Description +¦xref:S0-0cf/S1/S2/S3.adoc[`S3`] ¦ + +¦xref:S0-0cf/S1/S2/S4.adoc[`S4`] ¦ + +|=== +=== Member Functions +[cols=2,separator=¦] +|=== +¦Name ¦Description +¦xref:S0-0cf/S1/S2/f2.adoc[`f2`] ¦ + +|=== + + + + +[#R32] + +== R32 + + + +=== Synopsis + +Declared in header `` + +[source,cpp,subs="verbatim,macros,-callouts"] +---- +struct R32 + : xref:S0-0cf.adoc[S0]<4, bool>::xref:S0-0cf/S1.adoc[S1]::xref:S0-0cf/S1/S2.adoc[S2]<5, bool>; +---- + +=== Types +[cols=2,separator=¦] +|=== +¦Name ¦Description +¦xref:S0-0cf/S1/S2/S3.adoc[`S3`] ¦ + +¦xref:S0-0cf/S1/S2/S4.adoc[`S4`] ¦ + +|=== +=== Member Functions +[cols=2,separator=¦] +|=== +¦Name ¦Description +¦xref:S0-0cf/S1/S2/f2.adoc[`f2`] ¦ + +|=== + + + + +[#R33] + +== R33 + + + +=== Synopsis + +Declared in header `` + +[source,cpp,subs="verbatim,macros,-callouts"] +---- +struct R33 + : xref:S0-0cf.adoc[S0]<6, bool>::xref:S0-0cf/S1.adoc[S1]::xref:S0-0cf/S1/S2.adoc[S2]<7, int>; +---- + +=== Types +[cols=2,separator=¦] +|=== +¦Name ¦Description +¦xref:S0-0cf/S1/S2/S3.adoc[`S3`] ¦ + +¦xref:S0-0cf/S1/S2/S4.adoc[`S4`] ¦ + +|=== +=== Member Functions +[cols=2,separator=¦] +|=== +¦Name ¦Description +¦xref:S0-0cf/S1/S2/f2.adoc[`f2`] ¦ + +|=== + + + + +[#R34] + +== R34 + + + +=== Synopsis + +Declared in header `` + +[source,cpp,subs="verbatim,macros,-callouts"] +---- +struct R34 + : xref:S0-0cf.adoc[S0]<8, bool>::xref:S0-0cf/S1.adoc[S1]::xref:S0-0cf/S1/S2.adoc[S2]<9, bool>::xref:S0-0cf/S1/S2/S3.adoc[S3]; +---- + +=== Member Functions +[cols=2,separator=¦] +|=== +¦Name ¦Description +¦xref:S0-0cf/S1/S2/S3/f3.adoc[`f3`] ¦ + +|=== + + + + +[#R35] + +== R35 + + + +=== Synopsis + +Declared in header `` + +[source,cpp,subs="verbatim,macros,-callouts"] +---- +template< + int I, + typename T> +struct R35 + : xref:S0-0cf.adoc[S0]<10, bool>::xref:S0-0cf/S1.adoc[S1]::xref:S0-0cf/S1/S2.adoc[S2]<11, bool>::xref:S0-0cf/S1/S2/S4.adoc[S4]; +---- + +=== Member Functions +[cols=2,separator=¦] +|=== +¦Name ¦Description +¦xref:S0-0cf/S1/S2/S4/f4.adoc[`f4`] ¦ + +|=== + + + + +[#R36] + +== R36 + + + +=== Synopsis + +Declared in header `` + +[source,cpp,subs="verbatim,macros,-callouts"] +---- +struct R36 + : xref:S0-0cf.adoc[S0]<12, bool>::xref:S0-0cf/S1.adoc[S1]::xref:S0-0cf/S1/S2.adoc[S2]<13, bool>::xref:S0-0cf/S1/S2/S4.adoc[S4]<14, bool>; +---- + +=== Member Functions +[cols=2,separator=¦] +|=== +¦Name ¦Description +¦xref:S0-0cf/S1/S2/S4/f4.adoc[`f4`] ¦ + +|=== + + + + +[#R37] + +== R37 + + + +=== Synopsis + +Declared in header `` + +[source,cpp,subs="verbatim,macros,-callouts"] +---- +struct R37 + : xref:S0-0cf.adoc[S0]<15, bool>::xref:S0-0cf/S1.adoc[S1]::xref:S0-0cf/S1/S2.adoc[S2]<16, bool>::xref:S0-0cf/S1/S2/S4.adoc[S4]<17, int>; +---- + +=== Member Functions +[cols=2,separator=¦] +|=== +¦Name ¦Description +¦xref:S0-0cf/S1/S2/S4/f4.adoc[`f4`] ¦ + +|=== + + + + +[#R38] + +== R38 + + + +=== Synopsis + +Declared in header `` + +[source,cpp,subs="verbatim,macros,-callouts"] +---- +template< + int I, + typename T> +struct R38 + : xref:S0-0cf.adoc[S0]<18, bool>::xref:S0-0cf/S5.adoc[S5]; +---- + +=== Types +[cols=2,separator=¦] +|=== +¦Name ¦Description +¦xref:S0-0cf/S5/S6.adoc[`S6`] ¦ + +|=== +=== Member Functions +[cols=2,separator=¦] +|=== +¦Name ¦Description +¦xref:S0-0cf/S5/f5.adoc[`f5`] ¦ + +|=== + + + + +[#R39] + +== R39 + + + +=== Synopsis + +Declared in header `` + +[source,cpp,subs="verbatim,macros,-callouts"] +---- +struct R39 + : xref:S0-0cf.adoc[S0]<19, bool>::xref:S0-0cf/S5.adoc[S5]<20, bool>; +---- + +=== Types +[cols=2,separator=¦] +|=== +¦Name ¦Description +¦xref:S0-0cf/S5/S6.adoc[`S6`] ¦ + +|=== +=== Member Functions +[cols=2,separator=¦] +|=== +¦Name ¦Description +¦xref:S0-0cf/S5/f5.adoc[`f5`] ¦ + +|=== + + + + +[#R40] + +== R40 + + + +=== Synopsis + +Declared in header `` + +[source,cpp,subs="verbatim,macros,-callouts"] +---- +struct R40 + : xref:S0-0cf.adoc[S0]<21, bool>::xref:S0-0cf/S5.adoc[S5]<22, int>; +---- + +=== Types +[cols=2,separator=¦] +|=== +¦Name ¦Description +¦xref:S0-0cf/S5/S6.adoc[`S6`] ¦ + +|=== +=== Member Functions +[cols=2,separator=¦] +|=== +¦Name ¦Description +¦xref:S0-0cf/S5/f5.adoc[`f5`] ¦ + +|=== + + + + +[#R41] + +== R41 + + + +=== Synopsis + +Declared in header `` + +[source,cpp,subs="verbatim,macros,-callouts"] +---- +struct R41 + : xref:S0-0cf.adoc[S0]<23, bool>::xref:S0-0cf/S5.adoc[S5]<24, bool>::xref:S0-0cf/S5/S6.adoc[S6]; +---- + +=== Types +[cols=2,separator=¦] +|=== +¦Name ¦Description +¦xref:S0-0cf/S5/S6/S7.adoc[`S7`] ¦ + +|=== +=== Member Functions +[cols=2,separator=¦] +|=== +¦Name ¦Description +¦xref:S0-0cf/S5/S6/f6.adoc[`f6`] ¦ + +|=== + + + + +[#R42] + +== R42 + + + +=== Synopsis + +Declared in header `` + +[source,cpp,subs="verbatim,macros,-callouts"] +---- +template< + int I, + typename T> +struct R42 + : xref:S0-0cf.adoc[S0]<25, bool>::xref:S0-0cf/S5.adoc[S5]<26, bool>::xref:S0-0cf/S5/S6.adoc[S6]::xref:S0-0cf/S5/S6/S7.adoc[S7]; +---- + +=== Types +[cols=2,separator=¦] +|=== +¦Name ¦Description +¦xref:S0-0cf/S5/S6/S7/S8.adoc[`S8`] ¦ + +¦xref:S0-0cf/S5/S6/S7/S9.adoc[`S9`] ¦ + +|=== +=== Member Functions +[cols=2,separator=¦] +|=== +¦Name ¦Description +¦xref:S0-0cf/S5/S6/S7/f7.adoc[`f7`] ¦ + +|=== + + + + +[#R43] + +== R43 + + + +=== Synopsis + +Declared in header `` + +[source,cpp,subs="verbatim,macros,-callouts"] +---- +struct R43 + : xref:S0-0cf.adoc[S0]<27, bool>::xref:S0-0cf/S5.adoc[S5]<28, bool>::xref:S0-0cf/S5/S6.adoc[S6]::xref:S0-0cf/S5/S6/S7.adoc[S7]<29, int>; +---- + +=== Types +[cols=2,separator=¦] +|=== +¦Name ¦Description +¦xref:S0-0cf/S5/S6/S7/S8.adoc[`S8`] ¦ + +¦xref:S0-0cf/S5/S6/S7/S9.adoc[`S9`] ¦ + +|=== +=== Member Functions +[cols=2,separator=¦] +|=== +¦Name ¦Description +¦xref:S0-0cf/S5/S6/S7/f7.adoc[`f7`] ¦ + +|=== + + + + +[#R44] + +== R44 + + + +=== Synopsis + +Declared in header `` + +[source,cpp,subs="verbatim,macros,-callouts"] +---- +struct R44 + : xref:S0-0cf.adoc[S0]<30, bool>::xref:S0-0cf/S5.adoc[S5]<31, bool>::xref:S0-0cf/S5/S6.adoc[S6]::xref:S0-0cf/S5/S6/S7.adoc[S7]<32, bool>; +---- + +=== Types +[cols=2,separator=¦] +|=== +¦Name ¦Description +¦xref:S0-0cf/S5/S6/S7/S8.adoc[`S8`] ¦ + +¦xref:S0-0cf/S5/S6/S7/S9.adoc[`S9`] ¦ + +|=== +=== Member Functions +[cols=2,separator=¦] +|=== +¦Name ¦Description +¦xref:S0-0cf/S5/S6/S7/f7.adoc[`f7`] ¦ + +|=== + + + + +[#R45] + +== R45 + + + +=== Synopsis + +Declared in header `` + +[source,cpp,subs="verbatim,macros,-callouts"] +---- +struct R45 + : xref:S0-0cf.adoc[S0]<33, bool>::xref:S0-0cf/S5.adoc[S5]<34, bool>::xref:S0-0cf/S5/S6.adoc[S6]::xref:S0-0cf/S5/S6/S7.adoc[S7]<35, bool>::xref:S0-0cf/S5/S6/S7/S8.adoc[S8]; +---- + +=== Member Functions +[cols=2,separator=¦] +|=== +¦Name ¦Description +¦xref:S0-0cf/S5/S6/S7/S8/f8.adoc[`f8`] ¦ + +|=== + + + + +[#R46] + +== R46 + + + +=== Synopsis + +Declared in header `` + +[source,cpp,subs="verbatim,macros,-callouts"] +---- +template< + int I, + typename T> +struct R46 + : xref:S0-0cf.adoc[S0]<36, bool>::xref:S0-0cf/S5.adoc[S5]<37, bool>::xref:S0-0cf/S5/S6.adoc[S6]::xref:S0-0cf/S5/S6/S7.adoc[S7]<38, bool>::xref:S0-0cf/S5/S6/S7/S9.adoc[S9]; +---- + +=== Member Functions +[cols=2,separator=¦] +|=== +¦Name ¦Description +¦xref:S0-0cf/S5/S6/S7/S9/f9.adoc[`f9`] ¦ + +|=== + + + + +[#R47] + +== R47 + + + +=== Synopsis + +Declared in header `` + +[source,cpp,subs="verbatim,macros,-callouts"] +---- +struct R47 + : xref:S0-0cf.adoc[S0]<39, bool>::xref:S0-0cf/S5.adoc[S5]<40, bool>::xref:S0-0cf/S5/S6.adoc[S6]::xref:S0-0cf/S5/S6/S7.adoc[S7]<41, bool>::xref:S0-0cf/S5/S6/S7/S9.adoc[S9]<42, int>; +---- + +=== Member Functions +[cols=2,separator=¦] +|=== +¦Name ¦Description +¦xref:S0-0cf/S5/S6/S7/S9/f9.adoc[`f9`] ¦ + +|=== + + + + +[#R48] + +== R48 + + + +=== Synopsis + +Declared in header `` + +[source,cpp,subs="verbatim,macros,-callouts"] +---- +struct R48 + : xref:S0-0cf.adoc[S0]<43, bool>::xref:S0-0cf/S5.adoc[S5]<44, bool>::xref:S0-0cf/S5/S6.adoc[S6]::xref:S0-0cf/S5/S6/S7.adoc[S7]<45, bool>::xref:S0-0cf/S5/S6/S7/S9.adoc[S9]<46, bool>; +---- + +=== Member Functions +[cols=2,separator=¦] +|=== +¦Name ¦Description +¦xref:S0-0cf/S5/S6/S7/S9/f9.adoc[`f9`] ¦ + +|=== + + + + +Created with MrDocs diff --git a/test-files/golden-tests/class-template-specializations-2.adoc b/test-files/golden-tests/class-template-specializations-2.adoc new file mode 100644 index 000000000..fd39d5025 --- /dev/null +++ b/test-files/golden-tests/class-template-specializations-2.adoc @@ -0,0 +1,357 @@ += Reference +:mrdocs: + +[#index] + +== Global namespace + +=== Types +[cols=2,separator=¦] +|=== +¦Name ¦Description +¦xref:A-0e.adoc[`A`] ¦ + +¦xref:A-03.adoc[`A`] ¦ + +¦xref:A-06.adoc[`A`] ¦ + +|=== + + +[#A-0e] + +== A + + + +=== Synopsis + +Declared in header `` + +[source,cpp,subs="verbatim,macros,-callouts"] +---- +template +struct A; +---- + + + + + +[#A-03] + +== A + + + +=== Synopsis + +Declared in header `` + +[source,cpp,subs="verbatim,macros,-callouts"] +---- +template +struct xref:A-0e.adoc[pass:[A]]; +---- + +=== Types +[cols=2,separator=¦] +|=== +¦Name ¦Description +¦xref:A-03/B-05.adoc[`B`] ¦ + +¦xref:A-03/B-01.adoc[`B`] ¦ + +¦xref:A-03/B-0b.adoc[`B`] ¦ + +|=== + + + +:relfileprefix: ../ +[#A-03-B-05] + +== xref:A-03.adoc[pass:[A]]::B + + + +=== Synopsis + +Declared in header `` + +[source,cpp,subs="verbatim,macros,-callouts"] +---- +template +struct B; +---- + + + + +:relfileprefix: ../ +[#A-03-B-01] + +== xref:A-03.adoc[pass:[A]]::B + + + +=== Synopsis + +Declared in header `` + +[source,cpp,subs="verbatim,macros,-callouts"] +---- +template +struct xref:A-03/B-05.adoc[pass:[B]]; +---- + +=== Types +[cols=2,separator=¦] +|=== +¦Name ¦Description +¦xref:A-03/B-01/C.adoc[`C`] ¦ + +|=== + + + +:relfileprefix: ../../ +[#A-03-B-01-C] + +== xref:A-03.adoc[pass:[A]]::xref:A-03/B-01.adoc[pass:[B]]::C + + + +=== Synopsis + +Declared in header `` + +[source,cpp,subs="verbatim,macros,-callouts"] +---- +struct C; +---- + + + + +:relfileprefix: ../ +[#A-03-B-0b] + +== xref:A-03.adoc[pass:[A]]::B + + + +=== Synopsis + +Declared in header `` + +[source,cpp,subs="verbatim,macros,-callouts"] +---- +template<> +struct xref:A-03/B-05.adoc[pass:[B]]; +---- + + + + + +[#A-06] + +== A + + + +=== Synopsis + +Declared in header `` + +[source,cpp,subs="verbatim,macros,-callouts"] +---- +template<> +struct xref:A-0e.adoc[pass:[A]]; +---- + +=== Types +[cols=2,separator=¦] +|=== +¦Name ¦Description +¦xref:A-06/D-0b.adoc[`D`] ¦ + +¦xref:A-06/D-04.adoc[`D`] ¦ + +|=== + + + +:relfileprefix: ../ +[#A-06-D-0b] + +== xref:A-06.adoc[pass:[A]]::D + + + +=== Synopsis + +Declared in header `` + +[source,cpp,subs="verbatim,macros,-callouts"] +---- +template +struct D; +---- + +=== Types +[cols=2,separator=¦] +|=== +¦Name ¦Description +¦xref:A-06/D-0b/E-01.adoc[`E`] ¦ + +¦xref:A-06/D-0b/E-04.adoc[`E`] ¦ + +|=== + + + +:relfileprefix: ../../ +[#A-06-D-0b-E-01] + +== xref:A-06.adoc[pass:[A]]::xref:A-06/D-0b.adoc[pass:[D]]::E + + + +=== Synopsis + +Declared in header `` + +[source,cpp,subs="verbatim,macros,-callouts"] +---- +template +struct E; +---- + + + + +:relfileprefix: ../../ +[#A-06-D-0b-E-04] + +== xref:A-06.adoc[pass:[A]]::xref:A-06/D-0b.adoc[pass:[D]]::E + + + +=== Synopsis + +Declared in header `` + +[source,cpp,subs="verbatim,macros,-callouts"] +---- +template +struct xref:A-06/D-0b/E-01.adoc[pass:[E]]; +---- + +=== Types +[cols=2,separator=¦] +|=== +¦Name ¦Description +¦xref:A-06/D-0b/E-04/F.adoc[`F`] ¦ + +|=== + + + +:relfileprefix: ../../../ +[#A-06-D-0b-E-04-F] + +== xref:A-06.adoc[pass:[A]]::xref:A-06/D-0b.adoc[pass:[D]]::xref:A-06/D-0b/E-04.adoc[pass:[E]]::F + + + +=== Synopsis + +Declared in header `` + +[source,cpp,subs="verbatim,macros,-callouts"] +---- +struct F; +---- + + + + +:relfileprefix: ../ +[#A-06-D-04] + +== xref:A-06.adoc[pass:[A]]::D + + + +=== Synopsis + +Declared in header `` + +[source,cpp,subs="verbatim,macros,-callouts"] +---- +template<> +struct xref:A-06/D-0b.adoc[pass:[D]]; +---- + +=== Types +[cols=2,separator=¦] +|=== +¦Name ¦Description +¦xref:A-06/D-04/G-06.adoc[`G`] ¦ + +¦xref:A-06/D-04/G-0c.adoc[`G`] ¦ + +|=== + + + +:relfileprefix: ../../ +[#A-06-D-04-G-06] + +== xref:A-06.adoc[pass:[A]]::xref:A-06/D-04.adoc[pass:[D]]::G + + + +=== Synopsis + +Declared in header `` + +[source,cpp,subs="verbatim,macros,-callouts"] +---- +template +struct G; +---- + + + + +:relfileprefix: ../../ +[#A-06-D-04-G-0c] + +== xref:A-06.adoc[pass:[A]]::xref:A-06/D-04.adoc[pass:[D]]::G + + + +=== Synopsis + +Declared in header `` + +[source,cpp,subs="verbatim,macros,-callouts"] +---- +template +struct xref:A-06/D-04/G-06.adoc[pass:[G]]; +---- + + + + +:relfileprefix: ../ +[#A-06-D-07] + + +[#A-02] + + +Created with MrDocs diff --git a/test-files/golden-tests/class-template-specializations-3.adoc b/test-files/golden-tests/class-template-specializations-3.adoc new file mode 100644 index 000000000..c2b8105b9 --- /dev/null +++ b/test-files/golden-tests/class-template-specializations-3.adoc @@ -0,0 +1,543 @@ += Reference +:mrdocs: + +[#index] + +== Global namespace + +=== Types +[cols=2,separator=¦] +|=== +¦Name ¦Description +¦xref:A-0e.adoc[`A`] ¦ + +¦xref:E.adoc[`E`] ¦ + +|=== + + +[#A-0e] + +== A + + + +=== Synopsis + +Declared in header `` + +[source,cpp,subs="verbatim,macros,-callouts"] +---- +template +struct A; +---- + +=== Types +[cols=2,separator=¦] +|=== +¦Name ¦Description +¦xref:A-0e/B-07.adoc[`B`] ¦ + +¦xref:A-0e/B-00.adoc[`B`] ¦ + +|=== + + + +:relfileprefix: ../ +[#A-0e-B-07] + +== xref:A-0e.adoc[pass:[A]]::B + + + +=== Synopsis + +Declared in header `` + +[source,cpp,subs="verbatim,macros,-callouts"] +---- +template +struct B; +---- + +=== Types +[cols=2,separator=¦] +|=== +¦Name ¦Description +¦xref:A-0e/B-07/C.adoc[`C`] ¦ + +¦xref:A-0e/B-07/D-09.adoc[`D`] ¦ + +¦xref:A-0e/B-07/D-0f.adoc[`D`] ¦ + +|=== + + + +:relfileprefix: ../../ +[#A-0e-B-07-C] + +== xref:A-0e.adoc[pass:[A]]::xref:A-0e/B-07.adoc[pass:[B]]::C + + + +=== Synopsis + +Declared in header `` + +[source,cpp,subs="verbatim,macros,-callouts"] +---- +struct C; +---- + + + + +:relfileprefix: ../../ +[#A-0e-B-07-D-09] + +== xref:A-0e.adoc[pass:[A]]::xref:A-0e/B-07.adoc[pass:[B]]::D + + + +=== Synopsis + +Declared in header `` + +[source,cpp,subs="verbatim,macros,-callouts"] +---- +template +struct D; +---- + + + + +:relfileprefix: ../../ +[#A-0e-B-07-D-0f] + +== xref:A-0e.adoc[pass:[A]]::xref:A-0e/B-07.adoc[pass:[B]]::D + + + +=== Synopsis + +Declared in header `` + +[source,cpp,subs="verbatim,macros,-callouts"] +---- +template<> +struct xref:A-0e/B-07/D-09.adoc[pass:[D]]; +---- + + + + +:relfileprefix: ../ +[#A-0e-B-00] + +== xref:A-0e.adoc[pass:[A]]::B + + + +=== Synopsis + +Declared in header `` + +[source,cpp,subs="verbatim,macros,-callouts"] +---- +template<> +struct xref:A-0e/B-07.adoc[pass:[B]]; +---- + +=== Types +[cols=2,separator=¦] +|=== +¦Name ¦Description +¦xref:A-0e/B-00/C.adoc[`C`] ¦ + +¦xref:A-0e/B-00/D-09.adoc[`D`] ¦ + +¦xref:A-0e/B-00/D-0d.adoc[`D`] ¦ + +|=== + + + +:relfileprefix: ../../ +[#A-0e-B-00-C] + +== xref:A-0e.adoc[pass:[A]]::xref:A-0e/B-00.adoc[pass:[B]]::C + + + +=== Synopsis + +Declared in header `` + +[source,cpp,subs="verbatim,macros,-callouts"] +---- +struct C; +---- + + + + +:relfileprefix: ../../ +[#A-0e-B-00-D-09] + +== xref:A-0e.adoc[pass:[A]]::xref:A-0e/B-00.adoc[pass:[B]]::D + + + +=== Synopsis + +Declared in header `` + +[source,cpp,subs="verbatim,macros,-callouts"] +---- +template +struct D; +---- + + + + +:relfileprefix: ../../ +[#A-0e-B-00-D-0d] + +== xref:A-0e.adoc[pass:[A]]::xref:A-0e/B-00.adoc[pass:[B]]::D + + + +=== Synopsis + +Declared in header `` + +[source,cpp,subs="verbatim,macros,-callouts"] +---- +template<> +struct xref:A-0e/B-00/D-09.adoc[pass:[D]]; +---- + + + + + +[#A-0c] + + +[#A-00] + + +[#E] + +== E + + + +=== Synopsis + +Declared in header `` + +[source,cpp,subs="verbatim,macros,-callouts"] +---- +struct E; +---- + +=== Data Members +[cols=2,separator=¦] +|=== +¦Name ¦Description +¦xref:E/m0.adoc[`m0`] ¦ + +¦xref:E/m1.adoc[`m1`] ¦ + +¦xref:E/m10.adoc[`m10`] ¦ + +¦xref:E/m11.adoc[`m11`] ¦ + +¦xref:E/m12.adoc[`m12`] ¦ + +¦xref:E/m13.adoc[`m13`] ¦ + +¦xref:E/m14.adoc[`m14`] ¦ + +¦xref:E/m2.adoc[`m2`] ¦ + +¦xref:E/m3.adoc[`m3`] ¦ + +¦xref:E/m4.adoc[`m4`] ¦ + +¦xref:E/m5.adoc[`m5`] ¦ + +¦xref:E/m6.adoc[`m6`] ¦ + +¦xref:E/m7.adoc[`m7`] ¦ + +¦xref:E/m8.adoc[`m8`] ¦ + +¦xref:E/m9.adoc[`m9`] ¦ + +|=== + + + +:relfileprefix: ../ +[#E-m0] + +== xref:E.adoc[pass:[E]]::m0 + + + +=== Synopsis + +Declared in header `` + +[source,cpp,subs="verbatim,macros,-callouts"] +---- +xref:A-0e.adoc[A]::xref:A-0e/B-00.adoc[B] m0; +---- + + +:relfileprefix: ../ +[#E-m1] + +== xref:E.adoc[pass:[E]]::m1 + + + +=== Synopsis + +Declared in header `` + +[source,cpp,subs="verbatim,macros,-callouts"] +---- +xref:A-0e.adoc[A]::xref:A-0e/B-00.adoc[B] m1; +---- + + +:relfileprefix: ../ +[#E-m2] + +== xref:E.adoc[pass:[E]]::m2 + + + +=== Synopsis + +Declared in header `` + +[source,cpp,subs="verbatim,macros,-callouts"] +---- +xref:A-0e.adoc[A]::xref:A-0c/B.adoc[B] m2; +---- + + +:relfileprefix: ../ +[#E-m3] + +== xref:E.adoc[pass:[E]]::m3 + + + +=== Synopsis + +Declared in header `` + +[source,cpp,subs="verbatim,macros,-callouts"] +---- +xref:A-0e.adoc[A]::xref:A-0e/B-07.adoc[B] m3; +---- + + +:relfileprefix: ../ +[#E-m4] + +== xref:E.adoc[pass:[E]]::m4 + + + +=== Synopsis + +Declared in header `` + +[source,cpp,subs="verbatim,macros,-callouts"] +---- +xref:A-0e.adoc[A]::xref:A-00/B.adoc[B] m4; +---- + + +:relfileprefix: ../ +[#E-m5] + +== xref:E.adoc[pass:[E]]::m5 + + + +=== Synopsis + +Declared in header `` + +[source,cpp,subs="verbatim,macros,-callouts"] +---- +xref:A-0e.adoc[A]::xref:A-0e/B-00.adoc[B]::xref:A-0e/B-00/C.adoc[C] m5; +---- + + +:relfileprefix: ../ +[#E-m6] + +== xref:E.adoc[pass:[E]]::m6 + + + +=== Synopsis + +Declared in header `` + +[source,cpp,subs="verbatim,macros,-callouts"] +---- +xref:A-0e.adoc[A]::xref:A-0e/B-00.adoc[B]::xref:A-0e/B-00/C.adoc[C] m6; +---- + + +:relfileprefix: ../ +[#E-m7] + +== xref:E.adoc[pass:[E]]::m7 + + + +=== Synopsis + +Declared in header `` + +[source,cpp,subs="verbatim,macros,-callouts"] +---- +xref:A-0e.adoc[A]::xref:A-0c/B.adoc[B]::xref:A-0c/B/C.adoc[C] m7; +---- + + +:relfileprefix: ../ +[#E-m8] + +== xref:E.adoc[pass:[E]]::m8 + + + +=== Synopsis + +Declared in header `` + +[source,cpp,subs="verbatim,macros,-callouts"] +---- +xref:A-0e.adoc[A]::xref:A-0e/B-07.adoc[B]::xref:A-0e/B-07/C.adoc[C] m8; +---- + + +:relfileprefix: ../ +[#E-m9] + +== xref:E.adoc[pass:[E]]::m9 + + + +=== Synopsis + +Declared in header `` + +[source,cpp,subs="verbatim,macros,-callouts"] +---- +xref:A-0e.adoc[A]::xref:A-00/B.adoc[B]::xref:A-00/B/C.adoc[C] m9; +---- + + +:relfileprefix: ../ +[#E-m10] + +== xref:E.adoc[pass:[E]]::m10 + + + +=== Synopsis + +Declared in header `` + +[source,cpp,subs="verbatim,macros,-callouts"] +---- +xref:A-0e.adoc[A]::xref:A-0e/B-00.adoc[B]::xref:A-0e/B-00/D-0d.adoc[D] m10; +---- + + +:relfileprefix: ../ +[#E-m11] + +== xref:E.adoc[pass:[E]]::m11 + + + +=== Synopsis + +Declared in header `` + +[source,cpp,subs="verbatim,macros,-callouts"] +---- +xref:A-0e.adoc[A]::xref:A-0e/B-00.adoc[B]::xref:A-0e/B-00/D-0d.adoc[D] m11; +---- + + +:relfileprefix: ../ +[#E-m12] + +== xref:E.adoc[pass:[E]]::m12 + + + +=== Synopsis + +Declared in header `` + +[source,cpp,subs="verbatim,macros,-callouts"] +---- +xref:A-0e.adoc[A]::xref:A-0c/B.adoc[B]::xref:A-0c/B/D-0b.adoc[D] m12; +---- + + +:relfileprefix: ../ +[#E-m13] + +== xref:E.adoc[pass:[E]]::m13 + + + +=== Synopsis + +Declared in header `` + +[source,cpp,subs="verbatim,macros,-callouts"] +---- +xref:A-0e.adoc[A]::xref:A-0e/B-07.adoc[B]::xref:A-0e/B-07/D-0f.adoc[D] m13; +---- + + +:relfileprefix: ../ +[#E-m14] + +== xref:E.adoc[pass:[E]]::m14 + + + +=== Synopsis + +Declared in header `` + +[source,cpp,subs="verbatim,macros,-callouts"] +---- +xref:A-0e.adoc[A]::xref:A-00/B.adoc[B]::xref:A-00/B/D-07.adoc[D] m14; +---- + + + +Created with MrDocs diff --git a/test-files/golden-tests/class-template.adoc b/test-files/golden-tests/class-template.adoc new file mode 100644 index 000000000..0ebc41ac9 --- /dev/null +++ b/test-files/golden-tests/class-template.adoc @@ -0,0 +1,504 @@ += Reference +:mrdocs: + +[#index] + +== Global namespace + +=== Types +[cols=2,separator=¦] +|=== +¦Name ¦Description +¦xref:C0.adoc[`C0`] ¦ + +¦xref:C1.adoc[`C1`] ¦ + +¦xref:C2.adoc[`C2`] ¦ + +¦xref:C3.adoc[`C3`] ¦ + +¦xref:S.adoc[`S`] ¦ + +|=== + + +[#S] + +== S + + + +=== Synopsis + +Declared in header `` + +[source,cpp,subs="verbatim,macros,-callouts"] +---- +struct S; +---- + + + + + +[#C0] + +== C0 + + + +=== Synopsis + +Declared in header `` + +[source,cpp,subs="verbatim,macros,-callouts"] +---- +template +struct C0; +---- + +=== Types +[cols=2,separator=¦] +|=== +¦Name ¦Description +¦xref:C0/N0.adoc[`N0`] ¦ + +|=== +=== Data Members +[cols=2,separator=¦] +|=== +¦Name ¦Description +¦xref:C0/w.adoc[`w`] ¦ + +¦xref:C0/x.adoc[`x`] ¦ + +¦xref:C0/y.adoc[`y`] ¦ + +|=== + + + +:relfileprefix: ../ +[#C0-w] + +== xref:C0.adoc[pass:[C0]]::w + + + +=== Synopsis + +Declared in header `` + +[source,cpp,subs="verbatim,macros,-callouts"] +---- +int w; +---- + + +:relfileprefix: ../ +[#C0-x] + +== xref:C0.adoc[pass:[C0]]::x + + + +=== Synopsis + +Declared in header `` + +[source,cpp,subs="verbatim,macros,-callouts"] +---- +xref:S.adoc[S] x; +---- + + +:relfileprefix: ../ +[#C0-y] + +== xref:C0.adoc[pass:[C0]]::y + + + +=== Synopsis + +Declared in header `` + +[source,cpp,subs="verbatim,macros,-callouts"] +---- +T y; +---- + + +:relfileprefix: ../ +[#C0-N0] + +== xref:C0.adoc[pass:[C0]]::N0 + + + +=== Synopsis + +Declared in header `` + +[source,cpp,subs="verbatim,macros,-callouts"] +---- +struct N0; +---- + +=== Data Members +[cols=2,separator=¦] +|=== +¦Name ¦Description +¦xref:C0/N0/z.adoc[`z`] ¦ + +|=== + + + +:relfileprefix: ../../ +[#C0-N0-z] + +== xref:C0.adoc[pass:[C0]]::xref:C0/N0.adoc[pass:[N0]]::z + + + +=== Synopsis + +Declared in header `` + +[source,cpp,subs="verbatim,macros,-callouts"] +---- +int z; +---- + + + +[#C1] + +== C1 + + + +=== Synopsis + +Declared in header `` + +[source,cpp,subs="verbatim,macros,-callouts"] +---- +struct C1; +---- + +=== Types +[cols=2,separator=¦] +|=== +¦Name ¦Description +¦xref:C1/N1.adoc[`N1`] ¦ + +|=== +=== Data Members +[cols=2,separator=¦] +|=== +¦Name ¦Description +¦xref:C1/w.adoc[`w`] ¦ + +|=== + + + +:relfileprefix: ../ +[#C1-w] + +== xref:C1.adoc[pass:[C1]]::w + + + +=== Synopsis + +Declared in header `` + +[source,cpp,subs="verbatim,macros,-callouts"] +---- +int w; +---- + + +:relfileprefix: ../ +[#C1-N1] + +== xref:C1.adoc[pass:[C1]]::N1 + + + +=== Synopsis + +Declared in header `` + +[source,cpp,subs="verbatim,macros,-callouts"] +---- +template +struct N1; +---- + +=== Data Members +[cols=2,separator=¦] +|=== +¦Name ¦Description +¦xref:C1/N1/x.adoc[`x`] ¦ + +¦xref:C1/N1/y.adoc[`y`] ¦ + +¦xref:C1/N1/z.adoc[`z`] ¦ + +|=== + + + +:relfileprefix: ../../ +[#C1-N1-x] + +== xref:C1.adoc[pass:[C1]]::xref:C1/N1.adoc[pass:[N1]]::x + + + +=== Synopsis + +Declared in header `` + +[source,cpp,subs="verbatim,macros,-callouts"] +---- +xref:S.adoc[S] x; +---- + + +:relfileprefix: ../../ +[#C1-N1-y] + +== xref:C1.adoc[pass:[C1]]::xref:C1/N1.adoc[pass:[N1]]::y + + + +=== Synopsis + +Declared in header `` + +[source,cpp,subs="verbatim,macros,-callouts"] +---- +T y; +---- + + +:relfileprefix: ../../ +[#C1-N1-z] + +== xref:C1.adoc[pass:[C1]]::xref:C1/N1.adoc[pass:[N1]]::z + + + +=== Synopsis + +Declared in header `` + +[source,cpp,subs="verbatim,macros,-callouts"] +---- +int z; +---- + + + +[#C2] + +== C2 + + + +=== Synopsis + +Declared in header `` + +[source,cpp,subs="verbatim,macros,-callouts"] +---- +template +struct C2; +---- + +=== Types +[cols=2,separator=¦] +|=== +¦Name ¦Description +¦xref:C2/N2.adoc[`N2`] ¦ + +|=== +=== Data Members +[cols=2,separator=¦] +|=== +¦Name ¦Description +¦xref:C2/v.adoc[`v`] ¦ + +|=== + + + +:relfileprefix: ../ +[#C2-v] + +== xref:C2.adoc[pass:[C2]]::v + + + +=== Synopsis + +Declared in header `` + +[source,cpp,subs="verbatim,macros,-callouts"] +---- +int v; +---- + + +:relfileprefix: ../ +[#C2-N2] + +== xref:C2.adoc[pass:[C2]]::N2 + + + +=== Synopsis + +Declared in header `` + +[source,cpp,subs="verbatim,macros,-callouts"] +---- +template +struct N2; +---- + +=== Data Members +[cols=2,separator=¦] +|=== +¦Name ¦Description +¦xref:C2/N2/w.adoc[`w`] ¦ + +¦xref:C2/N2/x.adoc[`x`] ¦ + +¦xref:C2/N2/y.adoc[`y`] ¦ + +¦xref:C2/N2/z.adoc[`z`] ¦ + +|=== + + + +:relfileprefix: ../../ +[#C2-N2-w] + +== xref:C2.adoc[pass:[C2]]::xref:C2/N2.adoc[pass:[N2]]::w + + + +=== Synopsis + +Declared in header `` + +[source,cpp,subs="verbatim,macros,-callouts"] +---- +xref:S.adoc[S] w; +---- + + +:relfileprefix: ../../ +[#C2-N2-x] + +== xref:C2.adoc[pass:[C2]]::xref:C2/N2.adoc[pass:[N2]]::x + + + +=== Synopsis + +Declared in header `` + +[source,cpp,subs="verbatim,macros,-callouts"] +---- +T x; +---- + + +:relfileprefix: ../../ +[#C2-N2-y] + +== xref:C2.adoc[pass:[C2]]::xref:C2/N2.adoc[pass:[N2]]::y + + + +=== Synopsis + +Declared in header `` + +[source,cpp,subs="verbatim,macros,-callouts"] +---- +U y; +---- + + +:relfileprefix: ../../ +[#C2-N2-z] + +== xref:C2.adoc[pass:[C2]]::xref:C2/N2.adoc[pass:[N2]]::z + + + +=== Synopsis + +Declared in header `` + +[source,cpp,subs="verbatim,macros,-callouts"] +---- +int z; +---- + + + +[#C3] + +== C3 + + + +=== Synopsis + +Declared in header `` + +[source,cpp,subs="verbatim,macros,-callouts"] +---- +template +struct C3; +---- + +=== Data Members +[cols=2,separator=¦] +|=== +¦Name ¦Description +¦xref:C3/v.adoc[`v`] ¦ + +|=== + + + +:relfileprefix: ../ +[#C3-v] + +== xref:C3.adoc[pass:[C3]]::v + + + +=== Synopsis + +Declared in header `` + +[source,cpp,subs="verbatim,macros,-callouts"] +---- +int v; +---- + + + +Created with MrDocs diff --git a/test-files/golden-tests/commands.adoc b/test-files/golden-tests/commands.adoc new file mode 100644 index 000000000..1bbb13b0a --- /dev/null +++ b/test-files/golden-tests/commands.adoc @@ -0,0 +1,51 @@ += Reference +:mrdocs: + +[#index] + +== Global namespace + +=== Functions +[cols=2,separator=¦] +|=== +¦Name ¦Description +¦xref:f1.adoc[`f1`] ¦ + +brief + +|=== + + +[#f1] + +== f1 + + +brief + + +=== Synopsis + +Declared in header `` + +[source,cpp,subs="verbatim,macros,-callouts"] +---- +void +f1(); +---- + +=== Description + + +mrdocs hello + + + + + + + + + + +Created with MrDocs diff --git a/test-files/golden-tests/concept.adoc b/test-files/golden-tests/concept.adoc new file mode 100644 index 000000000..8e07e7b0b --- /dev/null +++ b/test-files/golden-tests/concept.adoc @@ -0,0 +1,91 @@ += Reference +:mrdocs: + +[#index] + +== Global namespace + +=== Functions +[cols=2,separator=¦] +|=== +¦Name ¦Description +¦xref:f.adoc[`f`] ¦ + +|=== +=== Variables +[cols=2,separator=¦] +|=== +¦Name ¦Description +¦xref:x.adoc[`x`] ¦ + +|=== +=== Concepts +[cols=2,separator=¦] +|=== +¦Name ¦Description +¦xref:C.adoc[`C`] ¦ + +|=== + + +[#C] + += C + + + +== Synopsis + +Declared in header `` + +[source,cpp,subs="verbatim,macros,-callouts"] +---- +template +concept C = sizeof(T) == sizeof(int); +---- + + + +[#f] + +== f + + + +=== Synopsis + +Declared in header `` + +[source,cpp,subs="verbatim,macros,-callouts"] +---- +template +void +f(); +---- + + + + + + + + + +[#x] + +== x + + + +=== Synopsis + +Declared in header `` + +[source,cpp,subs="verbatim,macros,-callouts"] +---- +xref:C.adoc[C] auto x = 0; +---- + + + +Created with MrDocs diff --git a/test-files/golden-tests/dependency-propagation.adoc b/test-files/golden-tests/dependency-propagation.adoc new file mode 100644 index 000000000..dbc205169 --- /dev/null +++ b/test-files/golden-tests/dependency-propagation.adoc @@ -0,0 +1,117 @@ += Reference +:mrdocs: + +[#index] + +== Global namespace + +=== Namespaces +[cols=2,separator=¦] +|=== +¦Name ¦Description +¦xref:N.adoc[`N`] ¦ + +|=== +=== Types +[cols=2,separator=¦] +|=== +¦Name ¦Description +¦xref:E.adoc[`E`] ¦ + +|=== + + +[#E] + +== E + + + +=== Synopsis + +Declared in header `` + +[source,cpp,subs="verbatim,macros,-callouts"] +---- +struct E + : xref:N.adoc[N]::xref:N/C.adoc[C]; +---- + + + + + +[#N] + +== N + +=== Types +[cols=2,separator=¦] +|=== +¦Name ¦Description +¦xref:N/A.adoc[`A`] ¦ + +¦xref:N/B.adoc[`B`] ¦ + +¦xref:N/C.adoc[`C`] ¦ + +|=== + +:relfileprefix: ../ +[#N-C] + +== xref:N.adoc[pass:[N]]::C + + + +=== Synopsis + +Declared in header `` + +[source,cpp,subs="verbatim,macros,-callouts"] +---- +template +using C = xref:N/B.adoc[B]; +---- + + +:relfileprefix: ../ +[#N-B] + +== xref:N.adoc[pass:[N]]::B + + + +=== Synopsis + +Declared in header `` + +[source,cpp,subs="verbatim,macros,-callouts"] +---- +template +using B = xref:N/A.adoc[A]; +---- + + +:relfileprefix: ../ +[#N-A] + +== xref:N.adoc[pass:[N]]::A + + + +=== Synopsis + +Declared in header `` + +[source,cpp,subs="verbatim,macros,-callouts"] +---- +template +struct A; +---- + + + + + +Created with MrDocs diff --git a/test-files/golden-tests/duplicate-jdoc.adoc b/test-files/golden-tests/duplicate-jdoc.adoc new file mode 100644 index 000000000..178d31566 --- /dev/null +++ b/test-files/golden-tests/duplicate-jdoc.adoc @@ -0,0 +1,269 @@ += Reference +:mrdocs: + +[#index] + +== Global namespace + +=== Functions +[cols=2,separator=¦] +|=== +¦Name ¦Description +¦xref:f0.adoc[`f0`] ¦ + +f0 brief + +¦xref:f1.adoc[`f1`] ¦ + +f1 brief + +¦xref:g0.adoc[`g0`] ¦ + +g0 brief + +¦xref:g1.adoc[`g1`] ¦ + +g1 brief + +¦xref:h0.adoc[`h0`] ¦ + +h0 brief + +¦xref:h1.adoc[`h1`] ¦ + +h1 brief + +|=== + + +[#f0] + +== f0 + + +f0 brief + + +=== Synopsis + +Declared in header `` + +[source,cpp,subs="verbatim,macros,-callouts"] +---- +int +f0(); +---- + + + +=== Return Value + + +int + + + + + + + + +[#f1] + +== f1 + + +f1 brief + + +=== Synopsis + +Declared in header `` + +[source,cpp,subs="verbatim,macros,-callouts"] +---- +int +f1(); +---- + + + +=== Return Value + + +bool + + + + + + + + +[#g0] + +== g0 + + +g0 brief + + +=== Synopsis + +Declared in header `` + +[source,cpp,subs="verbatim,macros,-callouts"] +---- +void +g0(int a); +---- + + + + + +=== Parameters + +|=== +| Name | Description + +| *a* +| +one + +| *a* +| +one + +|=== + + + + + +[#g1] + +== g1 + + +g1 brief + + +=== Synopsis + +Declared in header `` + +[source,cpp,subs="verbatim,macros,-callouts"] +---- +void +g1(int a); +---- + + + + + +=== Parameters + +|=== +| Name | Description + +| *a* +| +one + +| *b* +| +two + +|=== + + + + + +[#h0] + +== h0 + + +h0 brief + + +=== Synopsis + +Declared in header `` + +[source,cpp,subs="verbatim,macros,-callouts"] +---- +template +void +h0(); +---- + + + + +=== Template Parameters + +|=== +| Name | Description + +| *T* +| +one + +| *T* +| +one + +|=== + + + + + + +[#h1] + +== h1 + + +h1 brief + + +=== Synopsis + +Declared in header `` + +[source,cpp,subs="verbatim,macros,-callouts"] +---- +template +void +h1(); +---- + + + + +=== Template Parameters + +|=== +| Name | Description + +| *T* +| +one + +| *U* +| +two + +|=== + + + + + + +Created with MrDocs diff --git a/test-files/golden-tests/empty.adoc b/test-files/golden-tests/empty.adoc new file mode 100644 index 000000000..294e9392d --- /dev/null +++ b/test-files/golden-tests/empty.adoc @@ -0,0 +1,10 @@ += Reference +:mrdocs: + +[#index] + +== Global namespace + + + +Created with MrDocs diff --git a/test-files/golden-tests/enum.adoc b/test-files/golden-tests/enum.adoc new file mode 100644 index 000000000..d13d55819 --- /dev/null +++ b/test-files/golden-tests/enum.adoc @@ -0,0 +1,317 @@ += Reference +:mrdocs: + +[#index] + +== Global namespace + +=== Enums +[cols=2,separator=¦] +|=== +¦Name ¦Description +¦xref:E0.adoc[`E0`] ¦ + +E0 brief. + +¦xref:E1.adoc[`E1`] ¦ + +¦xref:E2.adoc[`E2`] ¦ + +E2 brief. + +¦xref:E3.adoc[`E3`] ¦ + +|=== + + +[#E0] + +== E0 + + +E0 brief. + + +=== Synopsis + +Declared in header `` + +[source,cpp,subs="verbatim,macros,-callouts"] +---- +enum E0; +---- + +=== Members +[,cols=2] +|=== +|Name |Description +|xref:E0/e0.adoc[`pass:v[e0]`] | +e0 brief. + +|xref:E0/e1.adoc[`pass:v[e1]`] | +e1 brief. + +|=== + +=== Description + + +E0 description. + + +:relfileprefix: ../ +[#E0-e0] + +== xref:E0.adoc[pass:[E0]]::e0 + + +e0 brief. + + +=== Synopsis + +Declared in header `` + +[source,cpp,subs="verbatim,macros,-callouts"] +---- +e0 = 1 +---- + +=== Description + + +e0 description. + + + +:relfileprefix: ../ +[#E0-e1] + +== xref:E0.adoc[pass:[E0]]::e1 + + +e1 brief. + + +=== Synopsis + +Declared in header `` + +[source,cpp,subs="verbatim,macros,-callouts"] +---- +e1 +---- + +=== Description + + +e1 description. + + + + +[#E1] + +== E1 + + + +=== Synopsis + +Declared in header `` + +[source,cpp,subs="verbatim,macros,-callouts"] +---- +enum E1 : char; +---- + +=== Members +[,cols=2] +|=== +|Name |Description +|xref:E1/e2.adoc[`pass:v[e2]`] | +|xref:E1/e3.adoc[`pass:v[e3]`] | +|=== + + +:relfileprefix: ../ +[#E1-e2] + +== xref:E1.adoc[pass:[E1]]::e2 + + + +=== Synopsis + +Declared in header `` + +[source,cpp,subs="verbatim,macros,-callouts"] +---- +e2 +---- + + +:relfileprefix: ../ +[#E1-e3] + +== xref:E1.adoc[pass:[E1]]::e3 + + + +=== Synopsis + +Declared in header `` + +[source,cpp,subs="verbatim,macros,-callouts"] +---- +e3 +---- + + + +[#E2] + +== E2 + + +E2 brief. + + +=== Synopsis + +Declared in header `` + +[source,cpp,subs="verbatim,macros,-callouts"] +---- +enum E2 : int; +---- + +=== Members +[,cols=2] +|=== +|Name |Description +|xref:E2/e4.adoc[`pass:v[e4]`] | +e4 brief. + +|xref:E2/e5.adoc[`pass:v[e5]`] | +e5 brief. + +|=== + +=== Description + + +E2 description. + + +:relfileprefix: ../ +[#E2-e4] + +== xref:E2.adoc[pass:[E2]]::e4 + + +e4 brief. + + +=== Synopsis + +Declared in header `` + +[source,cpp,subs="verbatim,macros,-callouts"] +---- +e4 +---- + +=== Description + + +e4 description. + + + +:relfileprefix: ../ +[#E2-e5] + +== xref:E2.adoc[pass:[E2]]::e5 + + +e5 brief. + + +=== Synopsis + +Declared in header `` + +[source,cpp,subs="verbatim,macros,-callouts"] +---- +e5 +---- + +=== Description + + +e5 description. + + + + +[#E3] + +== E3 + + + +=== Synopsis + +Declared in header `` + +[source,cpp,subs="verbatim,macros,-callouts"] +---- +enum E3 : char; +---- + +=== Members +[,cols=2] +|=== +|Name |Description +|xref:E3/e6.adoc[`pass:v[e6]`] | +|xref:E3/e7.adoc[`pass:v[e7]`] | +|=== + + +:relfileprefix: ../ +[#E3-e6] + +== xref:E3.adoc[pass:[E3]]::e6 + + + +=== Synopsis + +Declared in header `` + +[source,cpp,subs="verbatim,macros,-callouts"] +---- +e6 +---- + + +:relfileprefix: ../ +[#E3-e7] + +== xref:E3.adoc[pass:[E3]]::e7 + + + +=== Synopsis + +Declared in header `` + +[source,cpp,subs="verbatim,macros,-callouts"] +---- +e7 +---- + + + +Created with MrDocs diff --git a/test-files/golden-tests/explicit-conv-operator.adoc b/test-files/golden-tests/explicit-conv-operator.adoc new file mode 100644 index 000000000..f36934527 --- /dev/null +++ b/test-files/golden-tests/explicit-conv-operator.adoc @@ -0,0 +1,224 @@ += Reference +:mrdocs: + +[#index] + +== Global namespace + +=== Types +[cols=2,separator=¦] +|=== +¦Name ¦Description +¦xref:Explicit.adoc[`Explicit`] ¦ + +¦xref:ExplicitExpression.adoc[`ExplicitExpression`] ¦ + +¦xref:ExplicitFalse.adoc[`ExplicitFalse`] ¦ + +¦xref:ExplicitTrue.adoc[`ExplicitTrue`] ¦ + +|=== + + +[#Explicit] + +== Explicit + + + +=== Synopsis + +Declared in header `` + +[source,cpp,subs="verbatim,macros,-callouts"] +---- +struct Explicit; +---- + +=== Member Functions +[cols=2,separator=¦] +|=== +¦Name ¦Description +¦xref:Explicit/2conversion.adoc[`operator bool`] ¦ + +|=== + + + +:relfileprefix: ../ +[#Explicit-2conversion] + +== xref:Explicit.adoc[pass:[Explicit]]::operator bool + + + +=== Synopsis + +Declared in header `` + +[source,cpp,subs="verbatim,macros,-callouts"] +---- +explicit +operator bool(); +---- + + + + + + + + + +[#ExplicitFalse] + +== ExplicitFalse + + + +=== Synopsis + +Declared in header `` + +[source,cpp,subs="verbatim,macros,-callouts"] +---- +struct ExplicitFalse; +---- + +=== Member Functions +[cols=2,separator=¦] +|=== +¦Name ¦Description +¦xref:ExplicitFalse/2conversion.adoc[`operator bool`] ¦ + +|=== + + + +:relfileprefix: ../ +[#ExplicitFalse-2conversion] + +== xref:ExplicitFalse.adoc[pass:[ExplicitFalse]]::operator bool + + + +=== Synopsis + +Declared in header `` + +[source,cpp,subs="verbatim,macros,-callouts"] +---- +explicit(false) +operator bool(); +---- + + + + + + + + + +[#ExplicitTrue] + +== ExplicitTrue + + + +=== Synopsis + +Declared in header `` + +[source,cpp,subs="verbatim,macros,-callouts"] +---- +struct ExplicitTrue; +---- + +=== Member Functions +[cols=2,separator=¦] +|=== +¦Name ¦Description +¦xref:ExplicitTrue/2conversion.adoc[`operator bool`] ¦ + +|=== + + + +:relfileprefix: ../ +[#ExplicitTrue-2conversion] + +== xref:ExplicitTrue.adoc[pass:[ExplicitTrue]]::operator bool + + + +=== Synopsis + +Declared in header `` + +[source,cpp,subs="verbatim,macros,-callouts"] +---- +explicit(true) +operator bool(); +---- + + + + + + + + + +[#ExplicitExpression] + +== ExplicitExpression + + + +=== Synopsis + +Declared in header `` + +[source,cpp,subs="verbatim,macros,-callouts"] +---- +template +struct ExplicitExpression; +---- + +=== Member Functions +[cols=2,separator=¦] +|=== +¦Name ¦Description +¦xref:ExplicitExpression/2conversion.adoc[`operator bool`] ¦ + +|=== + + + +:relfileprefix: ../ +[#ExplicitExpression-2conversion] + +== xref:ExplicitExpression.adoc[pass:[ExplicitExpression]]::operator bool + + + +=== Synopsis + +Declared in header `` + +[source,cpp,subs="verbatim,macros,-callouts"] +---- +explicit(B) +operator bool(); +---- + + + + + + + + + +Created with MrDocs diff --git a/test-files/golden-tests/explicit-ctor.adoc b/test-files/golden-tests/explicit-ctor.adoc new file mode 100644 index 000000000..686989223 --- /dev/null +++ b/test-files/golden-tests/explicit-ctor.adoc @@ -0,0 +1,688 @@ += Reference +:mrdocs: + +[#index] + +== Global namespace + +=== Types +[cols=2,separator=¦] +|=== +¦Name ¦Description +¦xref:Explicit.adoc[`Explicit`] ¦ + +¦xref:ExplicitExpression.adoc[`ExplicitExpression`] ¦ + +¦xref:ExplicitFalse.adoc[`ExplicitFalse`] ¦ + +¦xref:ExplicitTrue.adoc[`ExplicitTrue`] ¦ + +|=== + + +[#Explicit] + +== Explicit + + + +=== Synopsis + +Declared in header `` + +[source,cpp,subs="verbatim,macros,-callouts"] +---- +struct Explicit; +---- + +=== Member Functions +[cols=2,separator=¦] +|=== +¦Name ¦Description +¦xref:Explicit/2constructor.adoc[`Explicit`] [.small]#[constructor]# ¦ +|=== + + + +:relfileprefix: ../ +[#Explicit-2constructor] + +== xref:Explicit.adoc[pass:[Explicit]]::Explicit + + + +=== Synopsis + + +[source,cpp,subs="verbatim,macros,-callouts"] +---- +explicit +xref:Explicit/2constructor-02.adoc[pass:[Explicit]](); +---- + +[source,cpp,subs="verbatim,macros,-callouts"] +---- +explicit +xref:Explicit/2constructor-00.adoc[pass:[Explicit]](xref:Explicit.adoc[Explicit] const&); +---- + +[source,cpp,subs="verbatim,macros,-callouts"] +---- +explicit +xref:Explicit/2constructor-0b.adoc[pass:[Explicit]](xref:Explicit.adoc[Explicit]&&) noexcept; +---- + +[source,cpp,subs="verbatim,macros,-callouts"] +---- +explicit +xref:Explicit/2constructor-03.adoc[pass:[Explicit]]( + int, + int); +---- + + + + + + + + +:relfileprefix: ../ +[#Explicit-2constructor-02] + +== xref:Explicit.adoc[pass:[Explicit]]::Explicit + + + +=== Synopsis + +Declared in header `` + +[source,cpp,subs="verbatim,macros,-callouts"] +---- +explicit +Explicit(); +---- + + + + + + + + +:relfileprefix: ../ +[#Explicit-2constructor-00] + +== xref:Explicit.adoc[pass:[Explicit]]::Explicit + + + +=== Synopsis + +Declared in header `` + +[source,cpp,subs="verbatim,macros,-callouts"] +---- +explicit +Explicit(xref:Explicit.adoc[Explicit] const&); +---- + + + + + + + + +:relfileprefix: ../ +[#Explicit-2constructor-0b] + +== xref:Explicit.adoc[pass:[Explicit]]::Explicit + + + +=== Synopsis + +Declared in header `` + +[source,cpp,subs="verbatim,macros,-callouts"] +---- +explicit +Explicit(xref:Explicit.adoc[Explicit]&&) noexcept; +---- + + + + + + + + +:relfileprefix: ../ +[#Explicit-2constructor-03] + +== xref:Explicit.adoc[pass:[Explicit]]::Explicit + + + +=== Synopsis + +Declared in header `` + +[source,cpp,subs="verbatim,macros,-callouts"] +---- +explicit +Explicit( + int, + int); +---- + + + + + + + + + +[#ExplicitTrue] + +== ExplicitTrue + + + +=== Synopsis + +Declared in header `` + +[source,cpp,subs="verbatim,macros,-callouts"] +---- +struct ExplicitTrue; +---- + +=== Member Functions +[cols=2,separator=¦] +|=== +¦Name ¦Description +¦xref:ExplicitTrue/2constructor.adoc[`ExplicitTrue`] [.small]#[constructor]# ¦ +|=== + + + +:relfileprefix: ../ +[#ExplicitTrue-2constructor] + +== xref:ExplicitTrue.adoc[pass:[ExplicitTrue]]::ExplicitTrue + + + +=== Synopsis + + +[source,cpp,subs="verbatim,macros,-callouts"] +---- +explicit(true) +xref:ExplicitTrue/2constructor-0d.adoc[pass:[ExplicitTrue]](); +---- + +[source,cpp,subs="verbatim,macros,-callouts"] +---- +explicit(true) +xref:ExplicitTrue/2constructor-04.adoc[pass:[ExplicitTrue]](xref:ExplicitTrue.adoc[ExplicitTrue] const&); +---- + +[source,cpp,subs="verbatim,macros,-callouts"] +---- +explicit(true) +xref:ExplicitTrue/2constructor-08.adoc[pass:[ExplicitTrue]](xref:ExplicitTrue.adoc[ExplicitTrue]&&) noexcept; +---- + +[source,cpp,subs="verbatim,macros,-callouts"] +---- +explicit(true) +xref:ExplicitTrue/2constructor-05.adoc[pass:[ExplicitTrue]]( + int, + int); +---- + + + + + + + + +:relfileprefix: ../ +[#ExplicitTrue-2constructor-0d] + +== xref:ExplicitTrue.adoc[pass:[ExplicitTrue]]::ExplicitTrue + + + +=== Synopsis + +Declared in header `` + +[source,cpp,subs="verbatim,macros,-callouts"] +---- +explicit(true) +ExplicitTrue(); +---- + + + + + + + + +:relfileprefix: ../ +[#ExplicitTrue-2constructor-04] + +== xref:ExplicitTrue.adoc[pass:[ExplicitTrue]]::ExplicitTrue + + + +=== Synopsis + +Declared in header `` + +[source,cpp,subs="verbatim,macros,-callouts"] +---- +explicit(true) +ExplicitTrue(xref:ExplicitTrue.adoc[ExplicitTrue] const&); +---- + + + + + + + + +:relfileprefix: ../ +[#ExplicitTrue-2constructor-08] + +== xref:ExplicitTrue.adoc[pass:[ExplicitTrue]]::ExplicitTrue + + + +=== Synopsis + +Declared in header `` + +[source,cpp,subs="verbatim,macros,-callouts"] +---- +explicit(true) +ExplicitTrue(xref:ExplicitTrue.adoc[ExplicitTrue]&&) noexcept; +---- + + + + + + + + +:relfileprefix: ../ +[#ExplicitTrue-2constructor-05] + +== xref:ExplicitTrue.adoc[pass:[ExplicitTrue]]::ExplicitTrue + + + +=== Synopsis + +Declared in header `` + +[source,cpp,subs="verbatim,macros,-callouts"] +---- +explicit(true) +ExplicitTrue( + int, + int); +---- + + + + + + + + + +[#ExplicitFalse] + +== ExplicitFalse + + + +=== Synopsis + +Declared in header `` + +[source,cpp,subs="verbatim,macros,-callouts"] +---- +struct ExplicitFalse; +---- + +=== Member Functions +[cols=2,separator=¦] +|=== +¦Name ¦Description +¦xref:ExplicitFalse/2constructor.adoc[`ExplicitFalse`] [.small]#[constructor]# ¦ +|=== + + + +:relfileprefix: ../ +[#ExplicitFalse-2constructor] + +== xref:ExplicitFalse.adoc[pass:[ExplicitFalse]]::ExplicitFalse + + + +=== Synopsis + + +[source,cpp,subs="verbatim,macros,-callouts"] +---- +explicit(false) +xref:ExplicitFalse/2constructor-01.adoc[pass:[ExplicitFalse]](); +---- + +[source,cpp,subs="verbatim,macros,-callouts"] +---- +explicit(false) +xref:ExplicitFalse/2constructor-08.adoc[pass:[ExplicitFalse]](xref:ExplicitFalse.adoc[ExplicitFalse] const&); +---- + +[source,cpp,subs="verbatim,macros,-callouts"] +---- +explicit(false) +xref:ExplicitFalse/2constructor-0a.adoc[pass:[ExplicitFalse]](xref:ExplicitFalse.adoc[ExplicitFalse]&&) noexcept; +---- + +[source,cpp,subs="verbatim,macros,-callouts"] +---- +explicit(false) +xref:ExplicitFalse/2constructor-04.adoc[pass:[ExplicitFalse]]( + int, + int); +---- + + + + + + + + +:relfileprefix: ../ +[#ExplicitFalse-2constructor-01] + +== xref:ExplicitFalse.adoc[pass:[ExplicitFalse]]::ExplicitFalse + + + +=== Synopsis + +Declared in header `` + +[source,cpp,subs="verbatim,macros,-callouts"] +---- +explicit(false) +ExplicitFalse(); +---- + + + + + + + + +:relfileprefix: ../ +[#ExplicitFalse-2constructor-08] + +== xref:ExplicitFalse.adoc[pass:[ExplicitFalse]]::ExplicitFalse + + + +=== Synopsis + +Declared in header `` + +[source,cpp,subs="verbatim,macros,-callouts"] +---- +explicit(false) +ExplicitFalse(xref:ExplicitFalse.adoc[ExplicitFalse] const&); +---- + + + + + + + + +:relfileprefix: ../ +[#ExplicitFalse-2constructor-0a] + +== xref:ExplicitFalse.adoc[pass:[ExplicitFalse]]::ExplicitFalse + + + +=== Synopsis + +Declared in header `` + +[source,cpp,subs="verbatim,macros,-callouts"] +---- +explicit(false) +ExplicitFalse(xref:ExplicitFalse.adoc[ExplicitFalse]&&) noexcept; +---- + + + + + + + + +:relfileprefix: ../ +[#ExplicitFalse-2constructor-04] + +== xref:ExplicitFalse.adoc[pass:[ExplicitFalse]]::ExplicitFalse + + + +=== Synopsis + +Declared in header `` + +[source,cpp,subs="verbatim,macros,-callouts"] +---- +explicit(false) +ExplicitFalse( + int, + int); +---- + + + + + + + + + +[#ExplicitExpression] + +== ExplicitExpression + + + +=== Synopsis + +Declared in header `` + +[source,cpp,subs="verbatim,macros,-callouts"] +---- +template +struct ExplicitExpression; +---- + +=== Member Functions +[cols=2,separator=¦] +|=== +¦Name ¦Description +¦xref:ExplicitExpression/2constructor.adoc[`ExplicitExpression`] [.small]#[constructor]# ¦ +|=== + + + +:relfileprefix: ../ +[#ExplicitExpression-2constructor] + +== xref:ExplicitExpression.adoc[pass:[ExplicitExpression]]::ExplicitExpression + + + +=== Synopsis + + +[source,cpp,subs="verbatim,macros,-callouts"] +---- +explicit(B) +xref:ExplicitExpression/2constructor-0b.adoc[pass:[ExplicitExpression]](); +---- + +[source,cpp,subs="verbatim,macros,-callouts"] +---- +explicit(B) +xref:ExplicitExpression/2constructor-04.adoc[pass:[ExplicitExpression]](xref:ExplicitExpression.adoc[ExplicitExpression] const&); +---- + +[source,cpp,subs="verbatim,macros,-callouts"] +---- +explicit(B) +xref:ExplicitExpression/2constructor-08.adoc[pass:[ExplicitExpression]](xref:ExplicitExpression.adoc[ExplicitExpression]&&) noexcept; +---- + +[source,cpp,subs="verbatim,macros,-callouts"] +---- +explicit(B) +xref:ExplicitExpression/2constructor-02.adoc[pass:[ExplicitExpression]]( + int, + int); +---- + + + + + + + + +:relfileprefix: ../ +[#ExplicitExpression-2constructor-0b] + +== xref:ExplicitExpression.adoc[pass:[ExplicitExpression]]::ExplicitExpression + + + +=== Synopsis + +Declared in header `` + +[source,cpp,subs="verbatim,macros,-callouts"] +---- +explicit(B) +ExplicitExpression(); +---- + + + + + + + + +:relfileprefix: ../ +[#ExplicitExpression-2constructor-04] + +== xref:ExplicitExpression.adoc[pass:[ExplicitExpression]]::ExplicitExpression + + + +=== Synopsis + +Declared in header `` + +[source,cpp,subs="verbatim,macros,-callouts"] +---- +explicit(B) +ExplicitExpression(xref:ExplicitExpression.adoc[ExplicitExpression] const&); +---- + + + + + + + + +:relfileprefix: ../ +[#ExplicitExpression-2constructor-08] + +== xref:ExplicitExpression.adoc[pass:[ExplicitExpression]]::ExplicitExpression + + + +=== Synopsis + +Declared in header `` + +[source,cpp,subs="verbatim,macros,-callouts"] +---- +explicit(B) +ExplicitExpression(xref:ExplicitExpression.adoc[ExplicitExpression]&&) noexcept; +---- + + + + + + + + +:relfileprefix: ../ +[#ExplicitExpression-2constructor-02] + +== xref:ExplicitExpression.adoc[pass:[ExplicitExpression]]::ExplicitExpression + + + +=== Synopsis + +Declared in header `` + +[source,cpp,subs="verbatim,macros,-callouts"] +---- +explicit(B) +ExplicitExpression( + int, + int); +---- + + + + + + + + + +Created with MrDocs diff --git a/test-files/golden-tests/explicit-deduct-guide.adoc b/test-files/golden-tests/explicit-deduct-guide.adoc new file mode 100644 index 000000000..11900ab22 --- /dev/null +++ b/test-files/golden-tests/explicit-deduct-guide.adoc @@ -0,0 +1,119 @@ += Reference +:mrdocs: + +[#index] + +== Global namespace + +=== Types +[cols=2,separator=¦] +|=== +¦Name ¦Description +¦xref:X-0e.adoc[`X`] ¦ + +|=== +=== Deduction Guides +[cols=2,separator=¦] +|=== +¦Name ¦Description +¦xref:X-0d.adoc[`X<0>`] ¦ + +¦xref:X-00.adoc[`X<0>`] ¦ + +¦xref:X-0b.adoc[`X<0>`] ¦ + +¦xref:X-06.adoc[`X<0>`] ¦ + +|=== + + +[#X-0e] + +== X + + + +=== Synopsis + +Declared in header `` + +[source,cpp,subs="verbatim,macros,-callouts"] +---- +template +struct X; +---- + + + + + +[#X-0d] + +== X + + + +=== Synopsis + +Declared in header `` + +[source,cpp,subs="verbatim,macros,-callouts"] +---- +xref:X-0e.adoc[X]<0>(bool) -> xref:X-0e.adoc[X]<0>; +---- + + + +[#X-00] + +== X + + + +=== Synopsis + +Declared in header `` + +[source,cpp,subs="verbatim,macros,-callouts"] +---- +xref:X-0e.adoc[X]<0>(char) -> xref:X-0e.adoc[X]<0>; +---- + + + +[#X-0b] + +== X + + + +=== Synopsis + +Declared in header `` + +[source,cpp,subs="verbatim,macros,-callouts"] +---- +xref:X-0e.adoc[X]<0>(int) -> xref:X-0e.adoc[X]<0>; +---- + + + +[#X-06] + +== X + + + +=== Synopsis + +Declared in header `` + +[source,cpp,subs="verbatim,macros,-callouts"] +---- +template +xref:X-0e.adoc[X]<0>(long) -> xref:X-0e.adoc[X]<0>; +---- + + + +Created with MrDocs diff --git a/test-files/golden-tests/explicit-object-parameter.adoc b/test-files/golden-tests/explicit-object-parameter.adoc new file mode 100644 index 000000000..c7fa18630 --- /dev/null +++ b/test-files/golden-tests/explicit-object-parameter.adoc @@ -0,0 +1,131 @@ += Reference +:mrdocs: + +[#index] + +== Global namespace + +=== Types +[cols=2,separator=¦] +|=== +¦Name ¦Description +¦xref:Optional.adoc[`Optional`] ¦ + +|=== + + +[#Optional] + +== Optional + + + +=== Synopsis + +Declared in header `` + +[source,cpp,subs="verbatim,macros,-callouts"] +---- +struct Optional; +---- + +=== Member Functions +[cols=2,separator=¦] +|=== +¦Name ¦Description +¦xref:Optional/value.adoc[`value`] ¦ +|=== + + + +:relfileprefix: ../ +[#Optional-value] + +== xref:Optional.adoc[pass:[Optional]]::value + + + +=== Synopsis + + +[source,cpp,subs="verbatim,macros,-callouts"] +---- +template +constexpr +auto&& +xref:Optional/value-05.adoc[pass:[value]](this Self&& self); +---- + +[source,cpp,subs="verbatim,macros,-callouts"] +---- +template +constexpr +auto&& +xref:Optional/value-06.adoc[pass:[value]](this + Self&& self, + int x); +---- + + + + + + + + +:relfileprefix: ../ +[#Optional-value-05] + +== xref:Optional.adoc[pass:[Optional]]::value + + + +=== Synopsis + +Declared in header `` + +[source,cpp,subs="verbatim,macros,-callouts"] +---- +template +constexpr +auto&& +value(this Self&& self); +---- + + + + + + + + +:relfileprefix: ../ +[#Optional-value-06] + +== xref:Optional.adoc[pass:[Optional]]::value + + + +=== Synopsis + +Declared in header `` + +[source,cpp,subs="verbatim,macros,-callouts"] +---- +template +constexpr +auto&& +value(this + Self&& self, + int x); +---- + + + + + + + + + +Created with MrDocs diff --git a/test-files/golden-tests/filters/blacklist_0.adoc b/test-files/golden-tests/filters/blacklist_0.adoc new file mode 100644 index 000000000..0abb72664 --- /dev/null +++ b/test-files/golden-tests/filters/blacklist_0.adoc @@ -0,0 +1,213 @@ += Reference +:mrdocs: + +[#index] + +== Global namespace + +=== Namespaces +[cols=2,separator=¦] +|=== +¦Name ¦Description +¦xref:N0.adoc[`N0`] ¦ + +¦xref:N3.adoc[`N3`] ¦ + +¦xref:N4.adoc[`N4`] ¦ + +¦xref:N7.adoc[`N7`] ¦ + +|=== + + +[#N0] + +== N0 + +=== Functions +[cols=2,separator=¦] +|=== +¦Name ¦Description +¦xref:N0/f0.adoc[`f0`] ¦ + +|=== + +:relfileprefix: ../ +[#N0-f0] + +== xref:N0.adoc[pass:[N0]]::f0 + + + +=== Synopsis + +Declared in header `` + +[source,cpp,subs="verbatim,macros,-callouts"] +---- +void +f0(); +---- + + + + + + + + + +[#N3] + +== N3 + + + +[#N4] + +== N4 + +=== Namespaces +[cols=2,separator=¦] +|=== +¦Name ¦Description +¦xref:N4/N5.adoc[`N5`] ¦ + +¦xref:N4/N6.adoc[`N6`] ¦ + +|=== + +:relfileprefix: ../ +[#N4-N5] + +== xref:N4.adoc[pass:[N4]]::N5 + +=== Functions +[cols=2,separator=¦] +|=== +¦Name ¦Description +¦xref:N4/N5/f1.adoc[`f1`] ¦ + +|=== + +:relfileprefix: ../../ +[#N4-N5-f1] + +== xref:N4.adoc[pass:[N4]]::xref:N4/N5.adoc[pass:[N5]]::f1 + + + +=== Synopsis + +Declared in header `` + +[source,cpp,subs="verbatim,macros,-callouts"] +---- +void +f1(); +---- + + + + + + + + +:relfileprefix: ../ +[#N4-N6] + +== xref:N4.adoc[pass:[N4]]::N6 + +=== Functions +[cols=2,separator=¦] +|=== +¦Name ¦Description +¦xref:N4/N6/f1.adoc[`f1`] ¦ + +|=== + +:relfileprefix: ../../ +[#N4-N6-f1] + +== xref:N4.adoc[pass:[N4]]::xref:N4/N6.adoc[pass:[N6]]::f1 + + + +=== Synopsis + +Declared in header `` + +[source,cpp,subs="verbatim,macros,-callouts"] +---- +void +f1(); +---- + + + + + + + + + +[#N7] + +== N7 + +=== Namespaces +[cols=2,separator=¦] +|=== +¦Name ¦Description +¦xref:N7/N8.adoc[`N8`] ¦ + +¦xref:N7/N9.adoc[`N9`] ¦ + +|=== + +:relfileprefix: ../ +[#N7-N8] + +== xref:N7.adoc[pass:[N7]]::N8 + + +:relfileprefix: ../ +[#N7-N9] + +== xref:N7.adoc[pass:[N7]]::N9 + +=== Functions +[cols=2,separator=¦] +|=== +¦Name ¦Description +¦xref:N7/N9/g0.adoc[`g0`] ¦ + +|=== + +:relfileprefix: ../../ +[#N7-N9-g0] + +== xref:N7.adoc[pass:[N7]]::xref:N7/N9.adoc[pass:[N9]]::g0 + + + +=== Synopsis + +Declared in header `` + +[source,cpp,subs="verbatim,macros,-callouts"] +---- +void +g0(); +---- + + + + + + + + + +Created with MrDocs diff --git a/test-files/golden-tests/filters/blacklist_test.adoc b/test-files/golden-tests/filters/blacklist_test.adoc new file mode 100644 index 000000000..d69cea2ef --- /dev/null +++ b/test-files/golden-tests/filters/blacklist_test.adoc @@ -0,0 +1,62 @@ += Reference +:mrdocs: + +[#index] + +== Global namespace + +=== Namespaces +[cols=2,separator=¦] +|=== +¦Name ¦Description +¦xref:blacklisted.adoc[`blacklisted`] ¦ + +¦xref:to_be_documented.adoc[`to_be_documented`] ¦ + +|=== + + +[#to_be_documented] + +== to_be_documented + +=== Functions +[cols=2,separator=¦] +|=== +¦Name ¦Description +¦xref:to_be_documented/documented_function.adoc[`documented_function`] ¦ + +|=== + +:relfileprefix: ../ +[#to_be_documented-documented_function] + +== xref:to_be_documented.adoc[pass:[to_be_documented]]::documented_function + + + +=== Synopsis + +Declared in header `` + +[source,cpp,subs="verbatim,macros,-callouts"] +---- +void +documented_function(); +---- + + + + + + + + + +[#blacklisted] + +== blacklisted + + + +Created with MrDocs diff --git a/test-files/golden-tests/filters/filters.adoc b/test-files/golden-tests/filters/filters.adoc new file mode 100644 index 000000000..17df24ce6 --- /dev/null +++ b/test-files/golden-tests/filters/filters.adoc @@ -0,0 +1,705 @@ += Reference +:mrdocs: + +[#index] + +== Global namespace + +=== Namespaces +[cols=2,separator=¦] +|=== +¦Name ¦Description +¦xref:A.adoc[`A`] ¦ + +¦xref:B.adoc[`B`] ¦ + +¦xref:C.adoc[`C`] ¦ + +¦xref:D.adoc[`D`] ¦ + +¦xref:F.adoc[`F`] ¦ + +|=== + + +[#A] + +== A + +=== Namespaces +[cols=2,separator=¦] +|=== +¦Name ¦Description +¦xref:A/detail.adoc[`detail`] ¦ + +¦xref:A/detair.adoc[`detair`] ¦ + +|=== +=== Functions +[cols=2,separator=¦] +|=== +¦Name ¦Description +¦xref:A/f0.adoc[`f0`] ¦ + +|=== + +:relfileprefix: ../ +[#A-f0] + +== xref:A.adoc[pass:[A]]::f0 + + + +=== Synopsis + +Declared in header `` + +[source,cpp,subs="verbatim,macros,-callouts"] +---- +void +f0(); +---- + + + + + + + + +:relfileprefix: ../ +[#A-detail] + +== xref:A.adoc[pass:[A]]::detail + +=== Functions +[cols=2,separator=¦] +|=== +¦Name ¦Description +¦xref:A/detail/g0.adoc[`g0`] ¦ + +|=== + +:relfileprefix: ../../ +[#A-detail-g0] + +== xref:A.adoc[pass:[A]]::xref:A/detail.adoc[pass:[detail]]::g0 + + + +=== Synopsis + +Declared in header `` + +[source,cpp,subs="verbatim,macros,-callouts"] +---- +void +g0(); +---- + + + + + + + + +:relfileprefix: ../ +[#A-detair] + +== xref:A.adoc[pass:[A]]::detair + +=== Types +[cols=2,separator=¦] +|=== +¦Name ¦Description +¦xref:A/detair/Y.adoc[`Y`] ¦ + +|=== +=== Functions +[cols=2,separator=¦] +|=== +¦Name ¦Description +¦xref:A/detair/f4.adoc[`f4`] ¦ + +|=== + +:relfileprefix: ../../ +[#A-detair-f4] + +== xref:A.adoc[pass:[A]]::xref:A/detair.adoc[pass:[detair]]::f4 + + + +=== Synopsis + +Declared in header `` + +[source,cpp,subs="verbatim,macros,-callouts"] +---- +void +f4(); +---- + + + + + + + + +:relfileprefix: ../../ +[#A-detair-Y] + +== xref:A.adoc[pass:[A]]::xref:A/detair.adoc[pass:[detair]]::Y + + + +=== Synopsis + +Declared in header `` + +[source,cpp,subs="verbatim,macros,-callouts"] +---- +struct Y; +---- + +=== Types +[cols=2,separator=¦] +|=== +¦Name ¦Description +¦xref:A/detair/Y/Z.adoc[`Z`] ¦ + +|=== +=== Member Functions +[cols=2,separator=¦] +|=== +¦Name ¦Description +¦xref:A/detair/Y/f6.adoc[`f6`] ¦ + +|=== + + + +:relfileprefix: ../../../ +[#A-detair-Y-f6] + +== xref:A.adoc[pass:[A]]::xref:A/detair.adoc[pass:[detair]]::xref:A/detair/Y.adoc[pass:[Y]]::f6 + + + +=== Synopsis + +Declared in header `` + +[source,cpp,subs="verbatim,macros,-callouts"] +---- +void +f6(); +---- + + + + + + + + +:relfileprefix: ../../../ +[#A-detair-Y-Z] + +== xref:A.adoc[pass:[A]]::xref:A/detair.adoc[pass:[detair]]::xref:A/detair/Y.adoc[pass:[Y]]::Z + + + +=== Synopsis + +Declared in header `` + +[source,cpp,subs="verbatim,macros,-callouts"] +---- +struct Z; +---- + +=== Member Functions +[cols=2,separator=¦] +|=== +¦Name ¦Description +¦xref:A/detair/Y/Z/f7.adoc[`f7`] ¦ + +|=== + + + +:relfileprefix: ../../../../ +[#A-detair-Y-Z-f7] + +== xref:A.adoc[pass:[A]]::xref:A/detair.adoc[pass:[detair]]::xref:A/detair/Y.adoc[pass:[Y]]::xref:A/detair/Y/Z.adoc[pass:[Z]]::f7 + + + +=== Synopsis + +Declared in header `` + +[source,cpp,subs="verbatim,macros,-callouts"] +---- +void +f7(); +---- + + + + + + + + + +[#B] + +== B + +=== Namespaces +[cols=2,separator=¦] +|=== +¦Name ¦Description +¦xref:B/detair.adoc[`detair`] ¦ + +|=== +=== Functions +[cols=2,separator=¦] +|=== +¦Name ¦Description +¦xref:B/f0.adoc[`f0`] ¦ + +|=== + +:relfileprefix: ../ +[#B-f0] + +== xref:B.adoc[pass:[B]]::f0 + + + +=== Synopsis + +Declared in header `` + +[source,cpp,subs="verbatim,macros,-callouts"] +---- +void +f0(); +---- + + + + + + + + +:relfileprefix: ../ +[#B-detair] + +== xref:B.adoc[pass:[B]]::detair + +=== Types +[cols=2,separator=¦] +|=== +¦Name ¦Description +¦xref:B/detair/Y.adoc[`Y`] ¦ + +|=== +=== Functions +[cols=2,separator=¦] +|=== +¦Name ¦Description +¦xref:B/detair/f4.adoc[`f4`] ¦ + +|=== + +:relfileprefix: ../../ +[#B-detair-f4] + +== xref:B.adoc[pass:[B]]::xref:B/detair.adoc[pass:[detair]]::f4 + + + +=== Synopsis + +Declared in header `` + +[source,cpp,subs="verbatim,macros,-callouts"] +---- +void +f4(); +---- + + + + + + + + +:relfileprefix: ../../ +[#B-detair-Y] + +== xref:B.adoc[pass:[B]]::xref:B/detair.adoc[pass:[detair]]::Y + + + +=== Synopsis + +Declared in header `` + +[source,cpp,subs="verbatim,macros,-callouts"] +---- +struct Y; +---- + +=== Types +[cols=2,separator=¦] +|=== +¦Name ¦Description +¦xref:B/detair/Y/Z.adoc[`Z`] ¦ + +|=== +=== Member Functions +[cols=2,separator=¦] +|=== +¦Name ¦Description +¦xref:B/detair/Y/f6.adoc[`f6`] ¦ + +|=== + + + +:relfileprefix: ../../../ +[#B-detair-Y-f6] + +== xref:B.adoc[pass:[B]]::xref:B/detair.adoc[pass:[detair]]::xref:B/detair/Y.adoc[pass:[Y]]::f6 + + + +=== Synopsis + +Declared in header `` + +[source,cpp,subs="verbatim,macros,-callouts"] +---- +void +f6(); +---- + + + + + + + + +:relfileprefix: ../../../ +[#B-detair-Y-Z] + +== xref:B.adoc[pass:[B]]::xref:B/detair.adoc[pass:[detair]]::xref:B/detair/Y.adoc[pass:[Y]]::Z + + + +=== Synopsis + +Declared in header `` + +[source,cpp,subs="verbatim,macros,-callouts"] +---- +struct Z; +---- + +=== Member Functions +[cols=2,separator=¦] +|=== +¦Name ¦Description +¦xref:B/detair/Y/Z/f7.adoc[`f7`] ¦ + +|=== + + + +:relfileprefix: ../../../../ +[#B-detair-Y-Z-f7] + +== xref:B.adoc[pass:[B]]::xref:B/detair.adoc[pass:[detair]]::xref:B/detair/Y.adoc[pass:[Y]]::xref:B/detair/Y/Z.adoc[pass:[Z]]::f7 + + + +=== Synopsis + +Declared in header `` + +[source,cpp,subs="verbatim,macros,-callouts"] +---- +void +f7(); +---- + + + + + + + + + +[#C] + +== C + +=== Functions +[cols=2,separator=¦] +|=== +¦Name ¦Description +¦xref:C/g0.adoc[`g0`] ¦ + +|=== + +:relfileprefix: ../ +[#C-g0] + +== xref:C.adoc[pass:[C]]::g0 + + + +=== Synopsis + +Declared in header `` + +[source,cpp,subs="verbatim,macros,-callouts"] +---- +void +g0(); +---- + + + + + + + + + +[#D] + +== D + +=== Namespaces +[cols=2,separator=¦] +|=== +¦Name ¦Description +¦xref:D/E.adoc[`E`] ¦ + +|=== +=== Functions +[cols=2,separator=¦] +|=== +¦Name ¦Description +¦xref:D/f1.adoc[`f1`] ¦ + +¦xref:D/g1.adoc[`g1`] ¦ + +|=== + +:relfileprefix: ../ +[#D-E] + +== xref:D.adoc[pass:[D]]::E + +=== Functions +[cols=2,separator=¦] +|=== +¦Name ¦Description +¦xref:D/E/g0.adoc[`g0`] ¦ + +|=== + +:relfileprefix: ../../ +[#D-E-g0] + +== xref:D.adoc[pass:[D]]::xref:D/E.adoc[pass:[E]]::g0 + + + +=== Synopsis + +Declared in header `` + +[source,cpp,subs="verbatim,macros,-callouts"] +---- +void +g0(); +---- + + + + + + + + +:relfileprefix: ../ +[#D-f1] + +== xref:D.adoc[pass:[D]]::f1 + + + +=== Synopsis + +Declared in header `` + +[source,cpp,subs="verbatim,macros,-callouts"] +---- +void +f1(); +---- + + + + + + + + +:relfileprefix: ../ +[#D-g1] + +== xref:D.adoc[pass:[D]]::g1 + + + +=== Synopsis + +Declared in header `` + +[source,cpp,subs="verbatim,macros,-callouts"] +---- +void +g1(); +---- + + + + + + + + + +[#F] + +== F + +=== Namespaces +[cols=2,separator=¦] +|=== +¦Name ¦Description +¦xref:F/G.adoc[`G`] ¦ + +|=== +=== Functions +[cols=2,separator=¦] +|=== +¦Name ¦Description +¦xref:F/g0.adoc[`g0`] ¦ + +|=== + +:relfileprefix: ../ +[#F-g0] + +== xref:F.adoc[pass:[F]]::g0 + + + +=== Synopsis + +Declared in header `` + +[source,cpp,subs="verbatim,macros,-callouts"] +---- +void +g0(); +---- + + + + + + + + +:relfileprefix: ../ +[#F-G] + +== xref:F.adoc[pass:[F]]::G + +=== Functions +[cols=2,separator=¦] +|=== +¦Name ¦Description +¦xref:F/G/f1.adoc[`f1`] ¦ + +¦xref:F/G/g1.adoc[`g1`] ¦ + +|=== + +:relfileprefix: ../../ +[#F-G-f1] + +== xref:F.adoc[pass:[F]]::xref:F/G.adoc[pass:[G]]::f1 + + + +=== Synopsis + +Declared in header `` + +[source,cpp,subs="verbatim,macros,-callouts"] +---- +void +f1(); +---- + + + + + + + + +:relfileprefix: ../../ +[#F-G-g1] + +== xref:F.adoc[pass:[F]]::xref:F/G.adoc[pass:[G]]::g1 + + + +=== Synopsis + +Declared in header `` + +[source,cpp,subs="verbatim,macros,-callouts"] +---- +void +g1(); +---- + + + + + + + + + +Created with MrDocs diff --git a/test-files/golden-tests/filters/whitelist_0.adoc b/test-files/golden-tests/filters/whitelist_0.adoc new file mode 100644 index 000000000..970324453 --- /dev/null +++ b/test-files/golden-tests/filters/whitelist_0.adoc @@ -0,0 +1,280 @@ += Reference +:mrdocs: + +[#index] + +== Global namespace + +=== Namespaces +[cols=2,separator=¦] +|=== +¦Name ¦Description +¦xref:N0.adoc[`N0`] ¦ + +¦xref:N1.adoc[`N1`] ¦ + +¦xref:N5.adoc[`N5`] ¦ + +|=== + + +[#N0] + +== N0 + +=== Functions +[cols=2,separator=¦] +|=== +¦Name ¦Description +¦xref:N0/f0_WL.adoc[`f0_WL`] ¦ + +|=== + +:relfileprefix: ../ +[#N0-f0_WL] + +== xref:N0.adoc[pass:[N0]]::f0_WL + + + +=== Synopsis + +Declared in header `` + +[source,cpp,subs="verbatim,macros,-callouts"] +---- +void +f0_WL(); +---- + + + + + + + + + +[#N1] + +== N1 + +=== Namespaces +[cols=2,separator=¦] +|=== +¦Name ¦Description +¦xref:N1/N3_WL.adoc[`N3_WL`] ¦ + +¦xref:N1/N4.adoc[`N4`] ¦ + +|=== + +:relfileprefix: ../ +[#N1-N3_WL] + +== xref:N1.adoc[pass:[N1]]::N3_WL + +=== Functions +[cols=2,separator=¦] +|=== +¦Name ¦Description +¦xref:N1/N3_WL/f1_WL.adoc[`f1_WL`] ¦ + +|=== + +:relfileprefix: ../../ +[#N1-N3_WL-f1_WL] + +== xref:N1.adoc[pass:[N1]]::xref:N1/N3_WL.adoc[pass:[N3_WL]]::f1_WL + + + +=== Synopsis + +Declared in header `` + +[source,cpp,subs="verbatim,macros,-callouts"] +---- +void +f1_WL(); +---- + + + + + + + + +:relfileprefix: ../ +[#N1-N4] + +== xref:N1.adoc[pass:[N1]]::N4 + +=== Functions +[cols=2,separator=¦] +|=== +¦Name ¦Description +¦xref:N1/N4/f1_WL.adoc[`f1_WL`] ¦ + +|=== + +:relfileprefix: ../../ +[#N1-N4-f1_WL] + +== xref:N1.adoc[pass:[N1]]::xref:N1/N4.adoc[pass:[N4]]::f1_WL + + + +=== Synopsis + +Declared in header `` + +[source,cpp,subs="verbatim,macros,-callouts"] +---- +void +f1_WL(); +---- + + + + + + + + + +[#N5] + +== N5 + +=== Namespaces +[cols=2,separator=¦] +|=== +¦Name ¦Description +¦xref:N5/N6_BL.adoc[`N6_BL`] ¦ + +|=== +=== Functions +[cols=2,separator=¦] +|=== +¦Name ¦Description +¦xref:N5/f0.adoc[`f0`] ¦ + +|=== + +:relfileprefix: ../ +[#N5-f0] + +== xref:N5.adoc[pass:[N5]]::f0 + + + +=== Synopsis + +Declared in header `` + +[source,cpp,subs="verbatim,macros,-callouts"] +---- +void +f0(); +---- + + + + + + + + +:relfileprefix: ../ +[#N5-N6_BL] + +== xref:N5.adoc[pass:[N5]]::N6_BL + +=== Namespaces +[cols=2,separator=¦] +|=== +¦Name ¦Description +¦xref:N5/N6_BL/M7.adoc[`M7`] ¦ + +¦xref:N5/N6_BL/N7.adoc[`N7`] ¦ + +|=== + +:relfileprefix: ../../ +[#N5-N6_BL-N7] + +== xref:N5.adoc[pass:[N5]]::xref:N5/N6_BL.adoc[pass:[N6_BL]]::N7 + +=== Functions +[cols=2,separator=¦] +|=== +¦Name ¦Description +¦xref:N5/N6_BL/N7/f2_WL.adoc[`f2_WL`] ¦ + +|=== + +:relfileprefix: ../../../ +[#N5-N6_BL-N7-f2_WL] + +== xref:N5.adoc[pass:[N5]]::xref:N5/N6_BL.adoc[pass:[N6_BL]]::xref:N5/N6_BL/N7.adoc[pass:[N7]]::f2_WL + + + +=== Synopsis + +Declared in header `` + +[source,cpp,subs="verbatim,macros,-callouts"] +---- +void +f2_WL(); +---- + + + + + + + + +:relfileprefix: ../../ +[#N5-N6_BL-M7] + +== xref:N5.adoc[pass:[N5]]::xref:N5/N6_BL.adoc[pass:[N6_BL]]::M7 + +=== Functions +[cols=2,separator=¦] +|=== +¦Name ¦Description +¦xref:N5/N6_BL/M7/f2_WL.adoc[`f2_WL`] ¦ + +|=== + +:relfileprefix: ../../../ +[#N5-N6_BL-M7-f2_WL] + +== xref:N5.adoc[pass:[N5]]::xref:N5/N6_BL.adoc[pass:[N6_BL]]::xref:N5/N6_BL/M7.adoc[pass:[M7]]::f2_WL + + + +=== Synopsis + +Declared in header `` + +[source,cpp,subs="verbatim,macros,-callouts"] +---- +void +f2_WL(); +---- + + + + + + + + + +Created with MrDocs diff --git a/test-files/golden-tests/filters/whitelist_test.adoc b/test-files/golden-tests/filters/whitelist_test.adoc new file mode 100644 index 000000000..228ab2a13 --- /dev/null +++ b/test-files/golden-tests/filters/whitelist_test.adoc @@ -0,0 +1,93 @@ += Reference +:mrdocs: + +[#index] + +== Global namespace + +=== Namespaces +[cols=2,separator=¦] +|=== +¦Name ¦Description +¦xref:blacklisted.adoc[`blacklisted`] ¦ + +¦xref:to_be_documented.adoc[`to_be_documented`] ¦ + +|=== + + +[#to_be_documented] + +== to_be_documented + +=== Functions +[cols=2,separator=¦] +|=== +¦Name ¦Description +¦xref:to_be_documented/documented_function.adoc[`documented_function`] ¦ + +|=== + +:relfileprefix: ../ +[#to_be_documented-documented_function] + +== xref:to_be_documented.adoc[pass:[to_be_documented]]::documented_function + + + +=== Synopsis + +Declared in header `` + +[source,cpp,subs="verbatim,macros,-callouts"] +---- +void +documented_function(); +---- + + + + + + + + + +[#blacklisted] + +== blacklisted + +=== Functions +[cols=2,separator=¦] +|=== +¦Name ¦Description +¦xref:blacklisted/whitelisted_function.adoc[`whitelisted_function`] ¦ + +|=== + +:relfileprefix: ../ +[#blacklisted-whitelisted_function] + +== xref:blacklisted.adoc[pass:[blacklisted]]::whitelisted_function + + + +=== Synopsis + +Declared in header `` + +[source,cpp,subs="verbatim,macros,-callouts"] +---- +void +whitelisted_function(); +---- + + + + + + + + + +Created with MrDocs diff --git a/test-files/golden-tests/friend-1.adoc b/test-files/golden-tests/friend-1.adoc new file mode 100644 index 000000000..8aec359ba --- /dev/null +++ b/test-files/golden-tests/friend-1.adoc @@ -0,0 +1,101 @@ += Reference +:mrdocs: + +[#index] + +== Global namespace + +=== Types +[cols=2,separator=¦] +|=== +¦Name ¦Description +¦xref:T.adoc[`T`] ¦ + +|=== +=== Functions +[cols=2,separator=¦] +|=== +¦Name ¦Description +¦xref:f.adoc[`f`] ¦ + +f + +|=== + + +[#T] + +== T + + + +=== Synopsis + +Declared in header `` + +[source,cpp,subs="verbatim,macros,-callouts"] +---- +struct T; +---- + +=== Friends +[cols=2,separator=¦] +|=== +¦Name ¦Description +¦xref:T/08friend.adoc[`f`] ¦ + +f + +|=== + + + +:relfileprefix: ../ +[#T-08friend] + +== f + + +f + + +=== Synopsis + +Declared in header `` + +[source,cpp,subs="verbatim,macros,-callouts"] +---- +friend +void +f(); +---- + + + +[#f] + +== f + + +f + + +=== Synopsis + +Declared in header `` + +[source,cpp,subs="verbatim,macros,-callouts"] +---- +void +f(); +---- + + + + + + + + + +Created with MrDocs diff --git a/test-files/golden-tests/friend-2.adoc b/test-files/golden-tests/friend-2.adoc new file mode 100644 index 000000000..30ff06bfe --- /dev/null +++ b/test-files/golden-tests/friend-2.adoc @@ -0,0 +1,101 @@ += Reference +:mrdocs: + +[#index] + +== Global namespace + +=== Types +[cols=2,separator=¦] +|=== +¦Name ¦Description +¦xref:T.adoc[`T`] ¦ + +|=== +=== Functions +[cols=2,separator=¦] +|=== +¦Name ¦Description +¦xref:f.adoc[`f`] ¦ + +f + +|=== + + +[#T] + +== T + + + +=== Synopsis + +Declared in header `` + +[source,cpp,subs="verbatim,macros,-callouts"] +---- +struct T; +---- + +=== Friends +[cols=2,separator=¦] +|=== +¦Name ¦Description +¦xref:T/08friend.adoc[`f`] ¦ + +f + +|=== + + + +:relfileprefix: ../ +[#T-08friend] + +== f + + +f + + +=== Synopsis + +Declared in header `` + +[source,cpp,subs="verbatim,macros,-callouts"] +---- +friend +void +f(); +---- + + + +[#f] + +== f + + +f + + +=== Synopsis + +Declared in header `` + +[source,cpp,subs="verbatim,macros,-callouts"] +---- +void +f(); +---- + + + + + + + + + +Created with MrDocs diff --git a/test-files/golden-tests/friend-3.adoc b/test-files/golden-tests/friend-3.adoc new file mode 100644 index 000000000..d8019b232 --- /dev/null +++ b/test-files/golden-tests/friend-3.adoc @@ -0,0 +1,148 @@ += Reference +:mrdocs: + +[#index] + +== Global namespace + +=== Types +[cols=2,separator=¦] +|=== +¦Name ¦Description +¦xref:T.adoc[`T`] ¦ + +¦xref:U.adoc[`U`] ¦ + +|=== +=== Functions +[cols=2,separator=¦] +|=== +¦Name ¦Description +¦xref:f.adoc[`f`] ¦ + +T::f + +|=== + + +[#T] + +== T + + + +=== Synopsis + +Declared in header `` + +[source,cpp,subs="verbatim,macros,-callouts"] +---- +struct T; +---- + +=== Friends +[cols=2,separator=¦] +|=== +¦Name ¦Description +¦xref:T/08friend.adoc[`f`] ¦ + +T::f + +|=== + + + +:relfileprefix: ../ +[#T-08friend] + +== f + + +T::f + + +=== Synopsis + +Declared in header `` + +[source,cpp,subs="verbatim,macros,-callouts"] +---- +friend +void +f(); +---- + + + +[#f] + +== f + + +T::f + + +=== Synopsis + +Declared in header `` + +[source,cpp,subs="verbatim,macros,-callouts"] +---- +void +f(); +---- + + + + + + + + + +[#U] + +== U + + + +=== Synopsis + +Declared in header `` + +[source,cpp,subs="verbatim,macros,-callouts"] +---- +struct U; +---- + +=== Friends +[cols=2,separator=¦] +|=== +¦Name ¦Description +¦xref:U/08friend.adoc[`f`] ¦ + +|=== + + + +:relfileprefix: ../ +[#U-08friend] + +== f + + + +=== Synopsis + +Declared in header `` + +[source,cpp,subs="verbatim,macros,-callouts"] +---- +friend +void +f(); +---- + + + +Created with MrDocs diff --git a/test-files/golden-tests/friend-4.adoc b/test-files/golden-tests/friend-4.adoc new file mode 100644 index 000000000..6f2617913 --- /dev/null +++ b/test-files/golden-tests/friend-4.adoc @@ -0,0 +1,148 @@ += Reference +:mrdocs: + +[#index] + +== Global namespace + +=== Types +[cols=2,separator=¦] +|=== +¦Name ¦Description +¦xref:T.adoc[`T`] ¦ + +¦xref:U.adoc[`U`] ¦ + +|=== +=== Functions +[cols=2,separator=¦] +|=== +¦Name ¦Description +¦xref:f.adoc[`f`] ¦ + +U::f + +|=== + + +[#T] + +== T + + + +=== Synopsis + +Declared in header `` + +[source,cpp,subs="verbatim,macros,-callouts"] +---- +struct T; +---- + +=== Friends +[cols=2,separator=¦] +|=== +¦Name ¦Description +¦xref:T/08friend.adoc[`f`] ¦ + +|=== + + + +:relfileprefix: ../ +[#T-08friend] + +== f + + + +=== Synopsis + +Declared in header `` + +[source,cpp,subs="verbatim,macros,-callouts"] +---- +friend +void +f(); +---- + + + +[#f] + +== f + + +U::f + + +=== Synopsis + +Declared in header `` + +[source,cpp,subs="verbatim,macros,-callouts"] +---- +void +f(); +---- + + + + + + + + + +[#U] + +== U + + + +=== Synopsis + +Declared in header `` + +[source,cpp,subs="verbatim,macros,-callouts"] +---- +struct U; +---- + +=== Friends +[cols=2,separator=¦] +|=== +¦Name ¦Description +¦xref:U/08friend.adoc[`f`] ¦ + +U::f + +|=== + + + +:relfileprefix: ../ +[#U-08friend] + +== f + + +U::f + + +=== Synopsis + +Declared in header `` + +[source,cpp,subs="verbatim,macros,-callouts"] +---- +friend +void +f(); +---- + + + +Created with MrDocs diff --git a/test-files/golden-tests/friend-5.adoc b/test-files/golden-tests/friend-5.adoc new file mode 100644 index 000000000..e544e9a02 --- /dev/null +++ b/test-files/golden-tests/friend-5.adoc @@ -0,0 +1,144 @@ += Reference +:mrdocs: + +[#index] + +== Global namespace + +=== Types +[cols=2,separator=¦] +|=== +¦Name ¦Description +¦xref:T.adoc[`T`] ¦ + +¦xref:U.adoc[`U`] ¦ + +|=== +=== Functions +[cols=2,separator=¦] +|=== +¦Name ¦Description +¦xref:f.adoc[`f`] ¦ + +f + +|=== + + +[#T] + +== T + + + +=== Synopsis + +Declared in header `` + +[source,cpp,subs="verbatim,macros,-callouts"] +---- +struct T; +---- + +=== Friends +[cols=2,separator=¦] +|=== +¦Name ¦Description +¦xref:T/08friend.adoc[`f`] ¦ + +|=== + + + +:relfileprefix: ../ +[#T-08friend] + +== f + + + +=== Synopsis + +Declared in header `` + +[source,cpp,subs="verbatim,macros,-callouts"] +---- +friend +void +f(); +---- + + + +[#f] + +== f + + +f + + +=== Synopsis + +Declared in header `` + +[source,cpp,subs="verbatim,macros,-callouts"] +---- +void +f(); +---- + + + + + + + + + +[#U] + +== U + + + +=== Synopsis + +Declared in header `` + +[source,cpp,subs="verbatim,macros,-callouts"] +---- +struct U; +---- + +=== Friends +[cols=2,separator=¦] +|=== +¦Name ¦Description +¦xref:U/08friend.adoc[`f`] ¦ + +|=== + + + +:relfileprefix: ../ +[#U-08friend] + +== f + + + +=== Synopsis + +Declared in header `` + +[source,cpp,subs="verbatim,macros,-callouts"] +---- +friend +void +f(); +---- + + + +Created with MrDocs diff --git a/test-files/golden-tests/friend-6.adoc b/test-files/golden-tests/friend-6.adoc new file mode 100644 index 000000000..80723ec12 --- /dev/null +++ b/test-files/golden-tests/friend-6.adoc @@ -0,0 +1,197 @@ += Reference +:mrdocs: + +[#index] + +== Global namespace + +=== Types +[cols=2,separator=¦] +|=== +¦Name ¦Description +¦xref:T.adoc[`T`] ¦ + +Struct T brief + +¦xref:U.adoc[`U`] ¦ + +Struct U brief + +¦xref:V.adoc[`V`] ¦ + +Struct V brief + +|=== + + +[#T] + +== T + + +Struct T brief + + +=== Synopsis + +Declared in header `` + +[source,cpp,subs="verbatim,macros,-callouts"] +---- +struct T; +---- + +=== Friends +[cols=2,separator=¦] +|=== +¦Name ¦Description +¦xref:T/08friend-04ce.adoc[`[object Object]`] ¦ + +Friend int brief + +¦xref:T/08friend-04cb.adoc[`[object Object]`] ¦ + +Friend class Z brief + +|=== + + + +:relfileprefix: ../ +[#T-08friend-04ce] + +== [object Object] + + +Friend int brief + + +=== Synopsis + +Declared in header `` + +[source,cpp,subs="verbatim,macros,-callouts"] +---- +friend int; +---- + + +:relfileprefix: ../ +[#T-08friend-04cb] + +== [object Object] + + +Friend class Z brief + + +=== Synopsis + +Declared in header `` + +[source,cpp,subs="verbatim,macros,-callouts"] +---- +friend Z; +---- + + + +[#U] + +== U + + +Struct U brief + + +=== Synopsis + +Declared in header `` + +[source,cpp,subs="verbatim,macros,-callouts"] +---- +struct U; +---- + +=== Friends +[cols=2,separator=¦] +|=== +¦Name ¦Description +¦xref:U/08friend.adoc[`[object Object]`] ¦ + +Friend T brief + +|=== + + + +:relfileprefix: ../ +[#U-08friend] + +== [object Object] + + +Friend T brief + + +=== Synopsis + +Declared in header `` + +[source,cpp,subs="verbatim,macros,-callouts"] +---- +friend xref:T.adoc[T]; +---- + + + +[#V] + +== V + + +Struct V brief + + +=== Synopsis + +Declared in header `` + +[source,cpp,subs="verbatim,macros,-callouts"] +---- +struct V; +---- + +=== Friends +[cols=2,separator=¦] +|=== +¦Name ¦Description +¦xref:V/08friend.adoc[`[object Object]`] ¦ + +Friend struct U brief + +|=== + + + +:relfileprefix: ../ +[#V-08friend] + +== [object Object] + + +Friend struct U brief + + +=== Synopsis + +Declared in header `` + +[source,cpp,subs="verbatim,macros,-callouts"] +---- +friend xref:U.adoc[U]; +---- + + + +Created with MrDocs diff --git a/test-files/golden-tests/function-parm-decay.adoc b/test-files/golden-tests/function-parm-decay.adoc new file mode 100644 index 000000000..79ef5db15 --- /dev/null +++ b/test-files/golden-tests/function-parm-decay.adoc @@ -0,0 +1,162 @@ += Reference +:mrdocs: + +[#index] + +== Global namespace + +=== Types +[cols=2,separator=¦] +|=== +¦Name ¦Description +¦xref:T.adoc[`T`] ¦ + +¦xref:U.adoc[`U`] ¦ + +|=== +=== Functions +[cols=2,separator=¦] +|=== +¦Name ¦Description +¦xref:f.adoc[`f`] ¦ + +¦xref:g.adoc[`g`] ¦ + +¦xref:h.adoc[`h`] ¦ + +¦xref:i.adoc[`i`] ¦ + +|=== + + +[#f] + +== f + + + +=== Synopsis + +Declared in header `` + +[source,cpp,subs="verbatim,macros,-callouts"] +---- +void +f(int const x); +---- + + + + + + + + + +[#g] + +== g + + + +=== Synopsis + +Declared in header `` + +[source,cpp,subs="verbatim,macros,-callouts"] +---- +void +g(int* x); +---- + + + + + + + + + +[#h] + +== h + + + +=== Synopsis + +Declared in header `` + +[source,cpp,subs="verbatim,macros,-callouts"] +---- +void +h(int x(bool)); +---- + + + + + + + + + +[#T] + +== T + + + +=== Synopsis + +Declared in header `` + +[source,cpp,subs="verbatim,macros,-callouts"] +---- +using T = int; +---- + + + +[#U] + +== U + + + +=== Synopsis + +Declared in header `` + +[source,cpp,subs="verbatim,macros,-callouts"] +---- +using U = int const; +---- + + + +[#i] + +== i + + + +=== Synopsis + +Declared in header `` + +[source,cpp,subs="verbatim,macros,-callouts"] +---- +void +i(xref:T.adoc[T]); +---- + + + + + + + + + +Created with MrDocs diff --git a/test-files/golden-tests/function-template.adoc b/test-files/golden-tests/function-template.adoc new file mode 100644 index 000000000..3ca23518e --- /dev/null +++ b/test-files/golden-tests/function-template.adoc @@ -0,0 +1,351 @@ += Reference +:mrdocs: + +[#index] + +== Global namespace + +=== Functions +[cols=2,separator=¦] +|=== +¦Name ¦Description +¦xref:f0.adoc[`f0`] ¦ + +¦xref:f1.adoc[`f1`] ¦ + +¦xref:f2.adoc[`f2`] ¦ + +¦xref:f3.adoc[`f3`] ¦ + +¦xref:g0.adoc[`g0`] ¦ + +¦xref:g1.adoc[`g1`] ¦ + +¦xref:g2.adoc[`g2`] ¦ + +¦xref:h0.adoc[`h0`] ¦ + +¦xref:h1.adoc[`h1`] ¦ + +¦xref:i.adoc[`i`] ¦ + +¦xref:j0.adoc[`j0`] ¦ + +¦xref:j1.adoc[`j1`] ¦ + +|=== + + +[#f0] + +== f0 + + + +=== Synopsis + +Declared in header `` + +[source,cpp,subs="verbatim,macros,-callouts"] +---- +template +void +f0(int x); +---- + + + + + + + + + +[#f1] + +== f1 + + + +=== Synopsis + +Declared in header `` + +[source,cpp,subs="verbatim,macros,-callouts"] +---- +template +void +f1(T t); +---- + + + + + + + + + +[#f2] + +== f2 + + + +=== Synopsis + +Declared in header `` + +[source,cpp,subs="verbatim,macros,-callouts"] +---- +template +void +f2(); +---- + + + + + + + + + +[#f3] + +== f3 + + + +=== Synopsis + +Declared in header `` + +[source,cpp,subs="verbatim,macros,-callouts"] +---- +template< + typename T, + class U = int> +void +f3(); +---- + + + + + + + + + +[#g0] + +== g0 + + + +=== Synopsis + +Declared in header `` + +[source,cpp,subs="verbatim,macros,-callouts"] +---- +template +void +g0(int x); +---- + + + + + + + + + +[#g1] + +== g1 + + + +=== Synopsis + +Declared in header `` + +[source,cpp,subs="verbatim,macros,-callouts"] +---- +template +void +g1(); +---- + + + + + + + + + +[#g2] + +== g2 + + + +=== Synopsis + +Declared in header `` + +[source,cpp,subs="verbatim,macros,-callouts"] +---- +template< + int J, + int I = 1> +void +g2(); +---- + + + + + + + + + +[#h0] + +== h0 + + + +=== Synopsis + +Declared in header `` + +[source,cpp,subs="verbatim,macros,-callouts"] +---- +template +void +h0(auto x); +---- + + + + + + + + + +[#h1] + +== h1 + + + +=== Synopsis + +Declared in header `` + +[source,cpp,subs="verbatim,macros,-callouts"] +---- +template< + class x:auto, + class auto:2> +void +h1( + auto x, + auto); +---- + + + + + + + + + +[#i] + +== i + + + +=== Synopsis + +Declared in header `` + +[source,cpp,subs="verbatim,macros,-callouts"] +---- +template< + typename T = int, + int I = 1> +void +i(); +---- + + + + + + + + + +[#j0] + +== j0 + + + +=== Synopsis + +Declared in header `` + +[source,cpp,subs="verbatim,macros,-callouts"] +---- +template typename T> +void +j0(); +---- + + + + + + + + + +[#j1] + +== j1 + + + +=== Synopsis + +Declared in header `` + +[source,cpp,subs="verbatim,macros,-callouts"] +---- +template< + template typename X, + template typename Z> +void +j1(); +---- + + + + + + + + + +Created with MrDocs diff --git a/test-files/golden-tests/function-tparm-decay.adoc b/test-files/golden-tests/function-tparm-decay.adoc new file mode 100644 index 000000000..ababc58a9 --- /dev/null +++ b/test-files/golden-tests/function-tparm-decay.adoc @@ -0,0 +1,166 @@ += Reference +:mrdocs: + +[#index] + +== Global namespace + +=== Types +[cols=2,separator=¦] +|=== +¦Name ¦Description +¦xref:T.adoc[`T`] ¦ + +¦xref:U.adoc[`U`] ¦ + +|=== +=== Functions +[cols=2,separator=¦] +|=== +¦Name ¦Description +¦xref:f.adoc[`f`] ¦ + +¦xref:g.adoc[`g`] ¦ + +¦xref:h.adoc[`h`] ¦ + +¦xref:i.adoc[`i`] ¦ + +|=== + + +[#f] + +== f + + + +=== Synopsis + +Declared in header `` + +[source,cpp,subs="verbatim,macros,-callouts"] +---- +template +void +f(); +---- + + + + + + + + + +[#g] + +== g + + + +=== Synopsis + +Declared in header `` + +[source,cpp,subs="verbatim,macros,-callouts"] +---- +template +void +g(); +---- + + + + + + + + + +[#h] + +== h + + + +=== Synopsis + +Declared in header `` + +[source,cpp,subs="verbatim,macros,-callouts"] +---- +template +void +h(); +---- + + + + + + + + + +[#T] + +== T + + + +=== Synopsis + +Declared in header `` + +[source,cpp,subs="verbatim,macros,-callouts"] +---- +using T = int; +---- + + + +[#U] + +== U + + + +=== Synopsis + +Declared in header `` + +[source,cpp,subs="verbatim,macros,-callouts"] +---- +using U = int const; +---- + + + +[#i] + +== i + + + +=== Synopsis + +Declared in header `` + +[source,cpp,subs="verbatim,macros,-callouts"] +---- +template +void +i(); +---- + + + + + + + + + +Created with MrDocs diff --git a/test-files/golden-tests/implicit-instantiation-member-ref.adoc b/test-files/golden-tests/implicit-instantiation-member-ref.adoc new file mode 100644 index 000000000..7222e01db --- /dev/null +++ b/test-files/golden-tests/implicit-instantiation-member-ref.adoc @@ -0,0 +1,444 @@ += Reference +:mrdocs: + +[#index] + +== Global namespace + +=== Types +[cols=2,separator=¦] +|=== +¦Name ¦Description +¦xref:A0.adoc[`A0`] ¦ + +¦xref:A1.adoc[`A1`] ¦ + +¦xref:A10.adoc[`A10`] ¦ + +¦xref:A2.adoc[`A2`] ¦ + +¦xref:A3.adoc[`A3`] ¦ + +¦xref:A4.adoc[`A4`] ¦ + +¦xref:A5.adoc[`A5`] ¦ + +¦xref:A6.adoc[`A6`] ¦ + +¦xref:A7.adoc[`A7`] ¦ + +¦xref:A8.adoc[`A8`] ¦ + +¦xref:A9.adoc[`A9`] ¦ + +¦xref:S0.adoc[`S0`] ¦ + +|=== + + +[#S0] + +== S0 + + + +=== Synopsis + +Declared in header `` + +[source,cpp,subs="verbatim,macros,-callouts"] +---- +template +struct S0; +---- + +=== Types +[cols=2,separator=¦] +|=== +¦Name ¦Description +¦xref:S0/M0.adoc[`M0`] ¦ + +¦xref:S0/M1.adoc[`M1`] ¦ + +¦xref:S0/S1.adoc[`S1`] ¦ + +¦xref:S0/S2.adoc[`S2`] ¦ + +|=== + + + +:relfileprefix: ../ +[#S0-M0] + +== xref:S0.adoc[pass:[S0]]::M0 + + + +=== Synopsis + +Declared in header `` + +[source,cpp,subs="verbatim,macros,-callouts"] +---- +using M0 = T; +---- + + +:relfileprefix: ../ +[#S0-S1] + +== xref:S0.adoc[pass:[S0]]::S1 + + + +=== Synopsis + +Declared in header `` + +[source,cpp,subs="verbatim,macros,-callouts"] +---- +struct S1; +---- + + + + +:relfileprefix: ../ +[#S0-M1] + +== xref:S0.adoc[pass:[S0]]::M1 + + + +=== Synopsis + +Declared in header `` + +[source,cpp,subs="verbatim,macros,-callouts"] +---- +template +using M1 = xref:S0.adoc[S0]; +---- + + +:relfileprefix: ../ +[#S0-S2] + +== xref:S0.adoc[pass:[S0]]::S2 + + + +=== Synopsis + +Declared in header `` + +[source,cpp,subs="verbatim,macros,-callouts"] +---- +template +struct S2; +---- + +=== Types +[cols=2,separator=¦] +|=== +¦Name ¦Description +¦xref:S0/S2/M2.adoc[`M2`] ¦ + +¦xref:S0/S2/M3.adoc[`M3`] ¦ + +¦xref:S0/S2/S3.adoc[`S3`] ¦ + +¦xref:S0/S2/S4.adoc[`S4`] ¦ + +|=== + + + +:relfileprefix: ../../ +[#S0-S2-M2] + +== xref:S0.adoc[pass:[S0]]::xref:S0/S2.adoc[pass:[S2]]::M2 + + + +=== Synopsis + +Declared in header `` + +[source,cpp,subs="verbatim,macros,-callouts"] +---- +using M2 = U; +---- + + +:relfileprefix: ../../ +[#S0-S2-S3] + +== xref:S0.adoc[pass:[S0]]::xref:S0/S2.adoc[pass:[S2]]::S3 + + + +=== Synopsis + +Declared in header `` + +[source,cpp,subs="verbatim,macros,-callouts"] +---- +struct S3; +---- + + + + +:relfileprefix: ../../ +[#S0-S2-M3] + +== xref:S0.adoc[pass:[S0]]::xref:S0/S2.adoc[pass:[S2]]::M3 + + + +=== Synopsis + +Declared in header `` + +[source,cpp,subs="verbatim,macros,-callouts"] +---- +template +using M3 = xref:S0/S2.adoc[S2]; +---- + + +:relfileprefix: ../../ +[#S0-S2-S4] + +== xref:S0.adoc[pass:[S0]]::xref:S0/S2.adoc[pass:[S2]]::S4 + + + +=== Synopsis + +Declared in header `` + +[source,cpp,subs="verbatim,macros,-callouts"] +---- +template +struct S4; +---- + +=== Types +[cols=2,separator=¦] +|=== +¦Name ¦Description +¦xref:S0/S2/S4/M4.adoc[`M4`] ¦ + +|=== + + + +:relfileprefix: ../../../ +[#S0-S2-S4-M4] + +== xref:S0.adoc[pass:[S0]]::xref:S0/S2.adoc[pass:[S2]]::xref:S0/S2/S4.adoc[pass:[S4]]::M4 + + + +=== Synopsis + +Declared in header `` + +[source,cpp,subs="verbatim,macros,-callouts"] +---- +using M4 = V; +---- + + + +[#A0] + +== A0 + + + +=== Synopsis + +Declared in header `` + +[source,cpp,subs="verbatim,macros,-callouts"] +---- +using A0 = xref:S0.adoc[S0]; +---- + + + +[#A1] + +== A1 + + + +=== Synopsis + +Declared in header `` + +[source,cpp,subs="verbatim,macros,-callouts"] +---- +using A1 = xref:A0.adoc[A0]::xref:S0/M0.adoc[M0]; +---- + + + +[#A2] + +== A2 + + + +=== Synopsis + +Declared in header `` + +[source,cpp,subs="verbatim,macros,-callouts"] +---- +using A2 = xref:A0.adoc[A0]::xref:S0/S1.adoc[S1]; +---- + + + +[#A3] + +== A3 + + + +=== Synopsis + +Declared in header `` + +[source,cpp,subs="verbatim,macros,-callouts"] +---- +using A3 = xref:S0.adoc[S0]::xref:S0/M0.adoc[M0]; +---- + + + +[#A4] + +== A4 + + + +=== Synopsis + +Declared in header `` + +[source,cpp,subs="verbatim,macros,-callouts"] +---- +using A4 = xref:S0.adoc[S0]::xref:S0/S1.adoc[S1]; +---- + + + +[#A5] + +== A5 + + + +=== Synopsis + +Declared in header `` + +[source,cpp,subs="verbatim,macros,-callouts"] +---- +using A5 = xref:S0.adoc[S0]; +---- + + + +[#A6] + +== A6 + + + +=== Synopsis + +Declared in header `` + +[source,cpp,subs="verbatim,macros,-callouts"] +---- +using A6 = xref:A5.adoc[A5]::xref:S0/M1.adoc[M1]::xref:S0/M0.adoc[M0]; +---- + + + +[#A7] + +== A7 + + + +=== Synopsis + +Declared in header `` + +[source,cpp,subs="verbatim,macros,-callouts"] +---- +using A7 = xref:A5.adoc[A5]::xref:S0/S2.adoc[S2]::xref:S0/S2/M2.adoc[M2]; +---- + + + +[#A8] + +== A8 + + + +=== Synopsis + +Declared in header `` + +[source,cpp,subs="verbatim,macros,-callouts"] +---- +using A8 = xref:A5.adoc[A5]::xref:S0/S2.adoc[S2]::xref:S0/S2/S3.adoc[S3]; +---- + + + +[#A9] + +== A9 + + + +=== Synopsis + +Declared in header `` + +[source,cpp,subs="verbatim,macros,-callouts"] +---- +using A9 = xref:A5.adoc[A5]::xref:S0/S2.adoc[S2]::xref:S0/S2/M3.adoc[M3]::xref:S0/S2/M3.adoc[M3]::xref:S0/S2/M2.adoc[M2]; +---- + + + +[#A10] + +== A10 + + + +=== Synopsis + +Declared in header `` + +[source,cpp,subs="verbatim,macros,-callouts"] +---- +using A10 = xref:A5.adoc[A5]::xref:S0/S2.adoc[S2]::xref:S0/S2/M3.adoc[M3]::xref:S0/S2/M3.adoc[M3]::xref:S0/S2/S4.adoc[S4]::xref:S0/S2/S4/M4.adoc[M4]; +---- + + + +Created with MrDocs diff --git a/test-files/golden-tests/local-class.adoc b/test-files/golden-tests/local-class.adoc new file mode 100644 index 000000000..2f1e4d138 --- /dev/null +++ b/test-files/golden-tests/local-class.adoc @@ -0,0 +1,68 @@ += Reference +:mrdocs: + +[#index] + +== Global namespace + +=== Types +[cols=2,separator=¦] +|=== +¦Name ¦Description +¦xref:B.adoc[`B`] ¦ + +|=== +=== Functions +[cols=2,separator=¦] +|=== +¦Name ¦Description +¦xref:f.adoc[`f`] ¦ + +|=== + + +[#f] + +== f + + + +=== Synopsis + +Declared in header `` + +[source,cpp,subs="verbatim,macros,-callouts"] +---- +auto +f(); +---- + + + + + + + + + +[#B] + +== B + + + +=== Synopsis + +Declared in header `` + +[source,cpp,subs="verbatim,macros,-callouts"] +---- +struct B + : decltype(f()); +---- + + + + + +Created with MrDocs diff --git a/test-files/golden-tests/mem-fn.adoc b/test-files/golden-tests/mem-fn.adoc new file mode 100644 index 000000000..917452316 --- /dev/null +++ b/test-files/golden-tests/mem-fn.adoc @@ -0,0 +1,1028 @@ += Reference +:mrdocs: + +[#index] + +== Global namespace + +=== Types +[cols=2,separator=¦] +|=== +¦Name ¦Description +¦xref:T01.adoc[`T01`] ¦ + +¦xref:T02.adoc[`T02`] ¦ + +¦xref:T03.adoc[`T03`] ¦ + +¦xref:T04.adoc[`T04`] ¦ + +¦xref:T05.adoc[`T05`] ¦ + +¦xref:T06.adoc[`T06`] ¦ + +¦xref:T08.adoc[`T08`] ¦ + +¦xref:T09.adoc[`T09`] ¦ + +¦xref:T10.adoc[`T10`] ¦ + +¦xref:T11.adoc[`T11`] ¦ + +¦xref:T12.adoc[`T12`] ¦ + +¦xref:T13.adoc[`T13`] ¦ + +¦xref:T14.adoc[`T14`] ¦ + +¦xref:T15.adoc[`T15`] ¦ + +¦xref:T16.adoc[`T16`] ¦ + +¦xref:T17.adoc[`T17`] ¦ + +¦xref:U.adoc[`U`] ¦ + +¦xref:V.adoc[`V`] ¦ + +|=== + + +[#T01] + +== T01 + + + +=== Synopsis + +Declared in header `` + +[source,cpp,subs="verbatim,macros,-callouts"] +---- +struct T01; +---- + +=== Member Functions +[cols=2,separator=¦] +|=== +¦Name ¦Description +¦xref:T01/f.adoc[`f`] ¦ + +|=== + + + +:relfileprefix: ../ +[#T01-f] + +== xref:T01.adoc[pass:[T01]]::f + + + +=== Synopsis + +Declared in header `` + +[source,cpp,subs="verbatim,macros,-callouts"] +---- +void +f(); +---- + + + + + + + + + +[#T02] + +== T02 + + + +=== Synopsis + +Declared in header `` + +[source,cpp,subs="verbatim,macros,-callouts"] +---- +struct T02; +---- + +=== Static Member Functions +[cols=2,separator=¦] +|=== +¦Name ¦Description +¦xref:T02/f.adoc[`f`] ¦ + +|=== + + + +:relfileprefix: ../ +[#T02-f] + +== xref:T02.adoc[pass:[T02]]::f + + + +=== Synopsis + +Declared in header `` + +[source,cpp,subs="verbatim,macros,-callouts"] +---- +static +void +f(); +---- + + + + + + + + + +[#T03] + +== T03 + + + +=== Synopsis + +Declared in header `` + +[source,cpp,subs="verbatim,macros,-callouts"] +---- +struct T03; +---- + +=== Member Functions +[cols=2,separator=¦] +|=== +¦Name ¦Description +¦xref:T03/f.adoc[`f`] ¦ + +|=== + + + +:relfileprefix: ../ +[#T03-f] + +== xref:T03.adoc[pass:[T03]]::f + + + +=== Synopsis + +Declared in header `` + +[source,cpp,subs="verbatim,macros,-callouts"] +---- +void +f() &; +---- + + + + + + + + + +[#T04] + +== T04 + + + +=== Synopsis + +Declared in header `` + +[source,cpp,subs="verbatim,macros,-callouts"] +---- +struct T04; +---- + +=== Member Functions +[cols=2,separator=¦] +|=== +¦Name ¦Description +¦xref:T04/f.adoc[`f`] ¦ + +|=== + + + +:relfileprefix: ../ +[#T04-f] + +== xref:T04.adoc[pass:[T04]]::f + + + +=== Synopsis + +Declared in header `` + +[source,cpp,subs="verbatim,macros,-callouts"] +---- +void +f() &&; +---- + + + + + + + + + +[#T05] + +== T05 + + + +=== Synopsis + +Declared in header `` + +[source,cpp,subs="verbatim,macros,-callouts"] +---- +struct T05; +---- + +=== Member Functions +[cols=2,separator=¦] +|=== +¦Name ¦Description +¦xref:T05/f.adoc[`f`] ¦ + +|=== + + + +:relfileprefix: ../ +[#T05-f] + +== xref:T05.adoc[pass:[T05]]::f + + + +=== Synopsis + +Declared in header `` + +[source,cpp,subs="verbatim,macros,-callouts"] +---- +void +f() const; +---- + + + + + + + + + +[#T06] + +== T06 + + + +=== Synopsis + +Declared in header `` + +[source,cpp,subs="verbatim,macros,-callouts"] +---- +struct T06; +---- + +=== Member Functions +[cols=2,separator=¦] +|=== +¦Name ¦Description +¦xref:T06/f.adoc[`f`] ¦ + +|=== + + + +:relfileprefix: ../ +[#T06-f] + +== xref:T06.adoc[pass:[T06]]::f + + + +=== Synopsis + +Declared in header `` + +[source,cpp,subs="verbatim,macros,-callouts"] +---- +constexpr +void +f(); +---- + + + + + + + + + +[#T08] + +== T08 + + + +=== Synopsis + +Declared in header `` + +[source,cpp,subs="verbatim,macros,-callouts"] +---- +struct T08; +---- + +=== Member Functions +[cols=2,separator=¦] +|=== +¦Name ¦Description +¦xref:T08/f.adoc[`f`] ¦ + +|=== + + + +:relfileprefix: ../ +[#T08-f] + +== xref:T08.adoc[pass:[T08]]::f + + + +=== Synopsis + +Declared in header `` + +[source,cpp,subs="verbatim,macros,-callouts"] +---- +void +f(); +---- + + + + + + + + + +[#T09] + +== T09 + + + +=== Synopsis + +Declared in header `` + +[source,cpp,subs="verbatim,macros,-callouts"] +---- +struct T09; +---- + +=== Member Functions +[cols=2,separator=¦] +|=== +¦Name ¦Description +¦xref:T09/f.adoc[`f`] ¦ + +|=== + + + +:relfileprefix: ../ +[#T09-f] + +== xref:T09.adoc[pass:[T09]]::f + + + +=== Synopsis + +Declared in header `` + +[source,cpp,subs="verbatim,macros,-callouts"] +---- +void +f() noexcept; +---- + + + + + + + + + +[#T10] + +== T10 + + + +=== Synopsis + +Declared in header `` + +[source,cpp,subs="verbatim,macros,-callouts"] +---- +struct T10; +---- + +=== Member Functions +[cols=2,separator=¦] +|=== +¦Name ¦Description +¦xref:T10/f.adoc[`f`] ¦ + +|=== + + + +:relfileprefix: ../ +[#T10-f] + +== xref:T10.adoc[pass:[T10]]::f + + + +=== Synopsis + +Declared in header `` + +[source,cpp,subs="verbatim,macros,-callouts"] +---- +void +f(); +---- + + + + + + + + + +[#T11] + +== T11 + + + +=== Synopsis + +Declared in header `` + +[source,cpp,subs="verbatim,macros,-callouts"] +---- +struct T11; +---- + +=== Member Functions +[cols=2,separator=¦] +|=== +¦Name ¦Description +¦xref:T11/f.adoc[`f`] ¦ + +|=== + + + +:relfileprefix: ../ +[#T11-f] + +== xref:T11.adoc[pass:[T11]]::f + + + +=== Synopsis + +Declared in header `` + +[source,cpp,subs="verbatim,macros,-callouts"] +---- +int +f(); +---- + + + + + + + + + +[#T12] + +== T12 + + + +=== Synopsis + +Declared in header `` + +[source,cpp,subs="verbatim,macros,-callouts"] +---- +struct T12; +---- + +=== Member Functions +[cols=2,separator=¦] +|=== +¦Name ¦Description +¦xref:T12/f.adoc[`f`] ¦ + +|=== + + + +:relfileprefix: ../ +[#T12-f] + +== xref:T12.adoc[pass:[T12]]::f + + + +=== Synopsis + +Declared in header `` + +[source,cpp,subs="verbatim,macros,-callouts"] +---- +void +f(...); +---- + + + + + + + + + +[#T13] + +== T13 + + + +=== Synopsis + +Declared in header `` + +[source,cpp,subs="verbatim,macros,-callouts"] +---- +struct T13; +---- + +=== Member Functions +[cols=2,separator=¦] +|=== +¦Name ¦Description +¦xref:T13/f.adoc[`f`] ¦ + +|=== + + + +:relfileprefix: ../ +[#T13-f] + +== xref:T13.adoc[pass:[T13]]::f + + + +=== Synopsis + +Declared in header `` + +[source,cpp,subs="verbatim,macros,-callouts"] +---- +virtual +void +f(); +---- + + + + + + + + + +[#T14] + +== T14 + + + +=== Synopsis + +Declared in header `` + +[source,cpp,subs="verbatim,macros,-callouts"] +---- +struct T14; +---- + +=== Member Functions +[cols=2,separator=¦] +|=== +¦Name ¦Description +¦xref:T14/f.adoc[`f`] ¦ + +|=== + + + +:relfileprefix: ../ +[#T14-f] + +== xref:T14.adoc[pass:[T14]]::f + + + +=== Synopsis + +Declared in header `` + +[source,cpp,subs="verbatim,macros,-callouts"] +---- +virtual +void +f() = 0; +---- + + + + + + + + + +[#T15] + +== T15 + + + +=== Synopsis + +Declared in header `` + +[source,cpp,subs="verbatim,macros,-callouts"] +---- +struct T15; +---- + +=== Member Functions +[cols=2,separator=¦] +|=== +¦Name ¦Description +¦xref:T15/f.adoc[`f`] ¦ + +|=== + + + +:relfileprefix: ../ +[#T15-f] + +== xref:T15.adoc[pass:[T15]]::f + + + +=== Synopsis + +Declared in header `` + +[source,cpp,subs="verbatim,macros,-callouts"] +---- +void +f() volatile; +---- + + + + + + + + + +[#T16] + +== T16 + + + +=== Synopsis + +Declared in header `` + +[source,cpp,subs="verbatim,macros,-callouts"] +---- +struct T16; +---- + +=== Static Member Functions +[cols=2,separator=¦] +|=== +¦Name ¦Description +¦xref:T16/f.adoc[`f`] ¦ + +|=== + + + +:relfileprefix: ../ +[#T16-f] + +== xref:T16.adoc[pass:[T16]]::f + + + +=== Synopsis + +Declared in header `` + +[source,cpp,subs="verbatim,macros,-callouts"] +---- +static +void +f(); +---- + + + + + + + + + +[#T17] + +== T17 + + + +=== Synopsis + +Declared in header `` + +[source,cpp,subs="verbatim,macros,-callouts"] +---- +struct T17 + : xref:T14.adoc[T14]; +---- + +=== Member Functions +[cols=2,separator=¦] +|=== +¦Name ¦Description +¦xref:T14/f.adoc[`f`] ¦ +|=== + + + +:relfileprefix: ../ +[#T17-f] + +== xref:T17.adoc[pass:[T17]]::f + + + +=== Synopsis + +Declared in header `` + +[source,cpp,subs="verbatim,macros,-callouts"] +---- +virtual +void +f() override; +---- + + + + + + + + + +[#U] + +== U + + + +=== Synopsis + +Declared in header `` + +[source,cpp,subs="verbatim,macros,-callouts"] +---- +struct U; +---- + +=== Member Functions +[cols=2,separator=¦] +|=== +¦Name ¦Description +¦xref:U/f1.adoc[`f1`] ¦ + +¦xref:U/f3.adoc[`f3`] ¦ + +|=== +=== Static Member Functions +[cols=2,separator=¦] +|=== +¦Name ¦Description +¦xref:U/f2.adoc[`f2`] ¦ + +|=== + + + +:relfileprefix: ../ +[#U-f1] + +== xref:U.adoc[pass:[U]]::f1 + + + +=== Synopsis + +Declared in header `` + +[source,cpp,subs="verbatim,macros,-callouts"] +---- +constexpr +void +f1(...) const volatile noexcept; +---- + + + + + + + + +:relfileprefix: ../ +[#U-f2] + +== xref:U.adoc[pass:[U]]::f2 + + + +=== Synopsis + +Declared in header `` + +[source,cpp,subs="verbatim,macros,-callouts"] +---- +constexpr +static +char +f2() noexcept; +---- + + + + + + + + +:relfileprefix: ../ +[#U-f3] + +== xref:U.adoc[pass:[U]]::f3 + + + +=== Synopsis + +Declared in header `` + +[source,cpp,subs="verbatim,macros,-callouts"] +---- +virtual +int +f3() const volatile noexcept = 0; +---- + + + + + + + + + +[#V] + +== V + + + +=== Synopsis + +Declared in header `` + +[source,cpp,subs="verbatim,macros,-callouts"] +---- +struct V + : xref:U.adoc[U]; +---- + +=== Member Functions +[cols=2,separator=¦] +|=== +¦Name ¦Description +¦xref:U/f1.adoc[`f1`] ¦ + +¦xref:U/f3.adoc[`f3`] ¦ +|=== +=== Static Member Functions +[cols=2,separator=¦] +|=== +¦Name ¦Description +¦xref:U/f2.adoc[`f2`] ¦ + +|=== + + + +:relfileprefix: ../ +[#V-f3] + +== xref:V.adoc[pass:[V]]::f3 + + + +=== Synopsis + +Declared in header `` + +[source,cpp,subs="verbatim,macros,-callouts"] +---- +virtual +int +f3() const volatile noexcept override; +---- + + + + + + + + + +Created with MrDocs diff --git a/test-files/golden-tests/namespace-alias-1.adoc b/test-files/golden-tests/namespace-alias-1.adoc new file mode 100644 index 000000000..342d01e5e --- /dev/null +++ b/test-files/golden-tests/namespace-alias-1.adoc @@ -0,0 +1,40 @@ += Reference +:mrdocs: + +[#index] + +== Global namespace + +=== Namespaces +[cols=2,separator=¦] +|=== +¦Name ¦Description +¦xref:LongName.adoc[`LongName`] ¦ + +|=== + + +[#LongName] + +== LongName + + + +[#A] + +== A + + + +=== Synopsis + +Declared in header `` + +[source,cpp,subs="verbatim,macros,-callouts"] +---- +namespace A = xref:LongName.adoc[LongName]; +---- + + + +Created with MrDocs diff --git a/test-files/golden-tests/namespace-alias-2.adoc b/test-files/golden-tests/namespace-alias-2.adoc new file mode 100644 index 000000000..1bfecd003 --- /dev/null +++ b/test-files/golden-tests/namespace-alias-2.adoc @@ -0,0 +1,57 @@ += Reference +:mrdocs: + +[#index] + +== Global namespace + +=== Namespaces +[cols=2,separator=¦] +|=== +¦Name ¦Description +¦xref:LongName.adoc[`LongName`] ¦ + +|=== + + +[#LongName] + +== LongName + + + +[#A] + +== A + + + +=== Synopsis + +Declared in header `` + +[source,cpp,subs="verbatim,macros,-callouts"] +---- +namespace A = xref:LongName.adoc[LongName]; +---- + + + +[#B] + +== B + + + +=== Synopsis + +Declared in header `` + +[source,cpp,subs="verbatim,macros,-callouts"] +---- +namespace B = xref:LongName.adoc[LongName]; +---- + + + +Created with MrDocs diff --git a/test-files/golden-tests/namespace-alias-3.adoc b/test-files/golden-tests/namespace-alias-3.adoc new file mode 100644 index 000000000..db9502e47 --- /dev/null +++ b/test-files/golden-tests/namespace-alias-3.adoc @@ -0,0 +1,57 @@ += Reference +:mrdocs: + +[#index] + +== Global namespace + +=== Namespaces +[cols=2,separator=¦] +|=== +¦Name ¦Description +¦xref:LongName.adoc[`LongName`] ¦ + +|=== + + +[#LongName] + +== LongName + + + +[#A] + +== A + + + +=== Synopsis + +Declared in header `` + +[source,cpp,subs="verbatim,macros,-callouts"] +---- +namespace A = xref:LongName.adoc[LongName]; +---- + + + +[#B] + +== B + + + +=== Synopsis + +Declared in header `` + +[source,cpp,subs="verbatim,macros,-callouts"] +---- +namespace B = xref:A.adoc[A]; +---- + + + +Created with MrDocs diff --git a/test-files/golden-tests/namespace.adoc b/test-files/golden-tests/namespace.adoc new file mode 100644 index 000000000..8bdd25c07 --- /dev/null +++ b/test-files/golden-tests/namespace.adoc @@ -0,0 +1,511 @@ += Reference +:mrdocs: + +[#index] + +== Global namespace + +=== Namespaces +[cols=2,separator=¦] +|=== +¦Name ¦Description +¦xref:00namespace.adoc[``] ¦ + +¦xref:A.adoc[`A`] ¦ + +¦xref:D.adoc[`D`] ¦ + +¦xref:I.adoc[`I`] ¦ + +|=== + + +[#A] + +== A + +=== Namespaces +[cols=2,separator=¦] +|=== +¦Name ¦Description +¦xref:A/00namespace.adoc[``] ¦ + +¦xref:A/B.adoc[`B`] ¦ + +¦xref:A/C.adoc[`C`] ¦ + +|=== +=== Functions +[cols=2,separator=¦] +|=== +¦Name ¦Description +¦xref:A/f0.adoc[`f0`] ¦ + +|=== + +:relfileprefix: ../ +[#A-f0] + +== xref:A.adoc[pass:[A]]::f0 + + + +=== Synopsis + +Declared in header `` + +[source,cpp,subs="verbatim,macros,-callouts"] +---- +void +f0(); +---- + + + + + + + + +:relfileprefix: ../ +[#A-B] + +== xref:A.adoc[pass:[A]]::B + +=== Functions +[cols=2,separator=¦] +|=== +¦Name ¦Description +¦xref:A/B/f1.adoc[`f1`] ¦ + +|=== + +:relfileprefix: ../../ +[#A-B-f1] + +== xref:A.adoc[pass:[A]]::xref:A/B.adoc[pass:[B]]::f1 + + + +=== Synopsis + +Declared in header `` + +[source,cpp,subs="verbatim,macros,-callouts"] +---- +void +f1(); +---- + + + + + + + + +:relfileprefix: ../ +[#A-C] + +== xref:A.adoc[pass:[A]]::C + +=== Functions +[cols=2,separator=¦] +|=== +¦Name ¦Description +¦xref:A/C/f2.adoc[`f2`] ¦ + +|=== + +:relfileprefix: ../../ +[#A-C-f2] + +== xref:A.adoc[pass:[A]]::xref:A/C.adoc[pass:[C]]::f2 + + + +=== Synopsis + +Declared in header `` + +[source,cpp,subs="verbatim,macros,-callouts"] +---- +void +f2(); +---- + + + + + + + + +:relfileprefix: ../ +[#A-00namespace] + +== Unnamed namespace + +=== Functions +[cols=2,separator=¦] +|=== +¦Name ¦Description +¦xref:A/00namespace/f3.adoc[`f3`] ¦ + +|=== + +:relfileprefix: ../../ +[#A-00namespace-f3] + +== xref:A.adoc[pass:[A]]::f3 + + + +=== Synopsis + +Declared in header `` + +[source,cpp,subs="verbatim,macros,-callouts"] +---- +void +f3(); +---- + + + + + + + + + +[#D] + +== D + +=== Namespaces +[cols=2,separator=¦] +|=== +¦Name ¦Description +¦xref:D/00namespace.adoc[``] ¦ + +¦xref:D/E.adoc[`E`] ¦ + +¦xref:D/F.adoc[`F`] ¦ + +|=== +=== Functions +[cols=2,separator=¦] +|=== +¦Name ¦Description +¦xref:D/f5.adoc[`f5`] ¦ + +|=== + +:relfileprefix: ../ +[#D-f5] + +== xref:D.adoc[pass:[D]]::f5 + + + +=== Synopsis + +Declared in header `` + +[source,cpp,subs="verbatim,macros,-callouts"] +---- +void +f5(); +---- + + + + + + + + +:relfileprefix: ../ +[#D-E] + +== xref:D.adoc[pass:[D]]::E + +=== Functions +[cols=2,separator=¦] +|=== +¦Name ¦Description +¦xref:D/E/f6.adoc[`f6`] ¦ + +|=== + +:relfileprefix: ../../ +[#D-E-f6] + +== xref:D.adoc[pass:[D]]::xref:D/E.adoc[pass:[E]]::f6 + + + +=== Synopsis + +Declared in header `` + +[source,cpp,subs="verbatim,macros,-callouts"] +---- +void +f6(); +---- + + + + + + + + +:relfileprefix: ../ +[#D-F] + +== xref:D.adoc[pass:[D]]::F + +=== Functions +[cols=2,separator=¦] +|=== +¦Name ¦Description +¦xref:D/F/f7.adoc[`f7`] ¦ + +|=== + +:relfileprefix: ../../ +[#D-F-f7] + +== xref:D.adoc[pass:[D]]::xref:D/F.adoc[pass:[F]]::f7 + + + +=== Synopsis + +Declared in header `` + +[source,cpp,subs="verbatim,macros,-callouts"] +---- +void +f7(); +---- + + + + + + + + +:relfileprefix: ../ +[#D-00namespace] + +== Unnamed namespace + +=== Functions +[cols=2,separator=¦] +|=== +¦Name ¦Description +¦xref:D/00namespace/f8.adoc[`f8`] ¦ + +|=== + +:relfileprefix: ../../ +[#D-00namespace-f8] + +== xref:D.adoc[pass:[D]]::f8 + + + +=== Synopsis + +Declared in header `` + +[source,cpp,subs="verbatim,macros,-callouts"] +---- +void +f8(); +---- + + + + + + + + + +[#00namespace] + +== Unnamed namespace + +=== Namespaces +[cols=2,separator=¦] +|=== +¦Name ¦Description +¦xref:00namespace/G.adoc[`G`] ¦ + +¦xref:00namespace/H.adoc[`H`] ¦ + +|=== +=== Functions +[cols=2,separator=¦] +|=== +¦Name ¦Description +¦xref:00namespace/f10.adoc[`f10`] ¦ + +|=== + +:relfileprefix: ../ +[#00namespace-f10] + +== f10 + + + +=== Synopsis + +Declared in header `` + +[source,cpp,subs="verbatim,macros,-callouts"] +---- +void +f10(); +---- + + + + + + + + +:relfileprefix: ../ +[#00namespace-G] + +== G + +=== Functions +[cols=2,separator=¦] +|=== +¦Name ¦Description +¦xref:00namespace/G/f11.adoc[`f11`] ¦ + +|=== + +:relfileprefix: ../../ +[#00namespace-G-f11] + +== xref:00namespace/G.adoc[pass:[G]]::f11 + + + +=== Synopsis + +Declared in header `` + +[source,cpp,subs="verbatim,macros,-callouts"] +---- +void +f11(); +---- + + + + + + + + +:relfileprefix: ../ +[#00namespace-H] + +== H + +=== Functions +[cols=2,separator=¦] +|=== +¦Name ¦Description +¦xref:00namespace/H/f12.adoc[`f12`] ¦ + +|=== + +:relfileprefix: ../../ +[#00namespace-H-f12] + +== xref:00namespace/H.adoc[pass:[H]]::f12 + + + +=== Synopsis + +Declared in header `` + +[source,cpp,subs="verbatim,macros,-callouts"] +---- +void +f12(); +---- + + + + + + + + + +[#I] + +== I + +=== Namespaces +[cols=2,separator=¦] +|=== +¦Name ¦Description +¦xref:I/00namespace.adoc[``] ¦ + +|=== + +:relfileprefix: ../ +[#I-00namespace] + +== Unnamed namespace + +=== Functions +[cols=2,separator=¦] +|=== +¦Name ¦Description +¦xref:I/00namespace/f14.adoc[`f14`] ¦ + +|=== + +:relfileprefix: ../../ +[#I-00namespace-f14] + +== xref:I.adoc[pass:[I]]::f14 + + + +=== Synopsis + +Declared in header `` + +[source,cpp,subs="verbatim,macros,-callouts"] +---- +void +f14(); +---- + + + + + + + + + +Created with MrDocs diff --git a/test-files/golden-tests/nested-private-template.adoc b/test-files/golden-tests/nested-private-template.adoc new file mode 100644 index 000000000..b8e5dcb3f --- /dev/null +++ b/test-files/golden-tests/nested-private-template.adoc @@ -0,0 +1,88 @@ += Reference +:mrdocs: + +[#index] + +== Global namespace + +=== Types +[cols=2,separator=¦] +|=== +¦Name ¦Description +¦xref:range.adoc[`range`] ¦ + +|=== + + +[#range] + +== range + + + +=== Synopsis + +Declared in header `` + +[source,cpp,subs="verbatim,macros,-callouts"] +---- +template +class range; +---- + +=== Private Types +[cols=2,separator=¦] +|=== +¦Name ¦Description +¦xref:range/impl-0e.adoc[`impl`] ¦ + +¦xref:range/impl-00.adoc[`impl`] ¦ + +|=== + + + +:relfileprefix: ../ +[#range-impl-0e] + +== xref:range.adoc[pass:[range]]::impl + + + +=== Synopsis + +Declared in header `` + +[source,cpp,subs="verbatim,macros,-callouts"] +---- +template< + class R, + bool> +struct impl; +---- + + + + +:relfileprefix: ../ +[#range-impl-00] + +== xref:range.adoc[pass:[range]]::impl + + + +=== Synopsis + +Declared in header `` + +[source,cpp,subs="verbatim,macros,-callouts"] +---- +template +struct xref:range/impl-0e.adoc[pass:[impl]]; +---- + + + + + +Created with MrDocs diff --git a/test-files/golden-tests/no_unique_address.adoc b/test-files/golden-tests/no_unique_address.adoc new file mode 100644 index 000000000..7cee4e897 --- /dev/null +++ b/test-files/golden-tests/no_unique_address.adoc @@ -0,0 +1,100 @@ += Reference +:mrdocs: + +[#index] + +== Global namespace + +=== Types +[cols=2,separator=¦] +|=== +¦Name ¦Description +¦xref:Empty.adoc[`Empty`] ¦ + +¦xref:T.adoc[`T`] ¦ + +|=== + + +[#Empty] + +== Empty + + + +=== Synopsis + +Declared in header `` + +[source,cpp,subs="verbatim,macros,-callouts"] +---- +struct Empty; +---- + + + + + +[#T] + +== T + + + +=== Synopsis + +Declared in header `` + +[source,cpp,subs="verbatim,macros,-callouts"] +---- +struct T; +---- + +=== Data Members +[cols=2,separator=¦] +|=== +¦Name ¦Description +¦xref:T/e.adoc[`e`] ¦ + +¦xref:T/i.adoc[`i`] ¦ + +|=== + + + +:relfileprefix: ../ +[#T-i] + +== xref:T.adoc[pass:[T]]::i + + + +=== Synopsis + +Declared in header `` + +[source,cpp,subs="verbatim,macros,-callouts"] +---- +int i; +---- + + +:relfileprefix: ../ +[#T-e] + +== xref:T.adoc[pass:[T]]::e + + + +=== Synopsis + +Declared in header `` + +[source,cpp,subs="verbatim,macros,-callouts"] +---- +xref:Empty.adoc[Empty] e = Empty{}; +---- + + + +Created with MrDocs diff --git a/test-files/golden-tests/noreturn.adoc b/test-files/golden-tests/noreturn.adoc new file mode 100644 index 000000000..485ce935f --- /dev/null +++ b/test-files/golden-tests/noreturn.adoc @@ -0,0 +1,156 @@ += Reference +:mrdocs: + +[#index] + +== Global namespace + +=== Types +[cols=2,separator=¦] +|=== +¦Name ¦Description +¦xref:T.adoc[`T`] ¦ + +|=== +=== Functions +[cols=2,separator=¦] +|=== +¦Name ¦Description +¦xref:f1.adoc[`f1`] ¦ + +|=== + + +[#f1] + +== f1 + + + +=== Synopsis + +Declared in header `` + +[source,cpp,subs="verbatim,macros,-callouts"] +---- +void +f1(); +---- + + + + + + + + + +[#T] + +== T + + + +=== Synopsis + +Declared in header `` + +[source,cpp,subs="verbatim,macros,-callouts"] +---- +struct T; +---- + +=== Member Functions +[cols=2,separator=¦] +|=== +¦Name ¦Description +¦xref:T/f3.adoc[`f3`] ¦ + +|=== +=== Static Member Functions +[cols=2,separator=¦] +|=== +¦Name ¦Description +¦xref:T/f2.adoc[`f2`] ¦ + +|=== +=== Friends +[cols=2,separator=¦] +|=== +¦Name ¦Description +¦xref:T/08friend.adoc[`f1`] ¦ + +|=== + + + +:relfileprefix: ../ +[#T-f2] + +== xref:T.adoc[pass:[T]]::f2 + + + +=== Synopsis + +Declared in header `` + +[source,cpp,subs="verbatim,macros,-callouts"] +---- +static +void +f2(); +---- + + + + + + + + +:relfileprefix: ../ +[#T-f3] + +== xref:T.adoc[pass:[T]]::f3 + + + +=== Synopsis + +Declared in header `` + +[source,cpp,subs="verbatim,macros,-callouts"] +---- +void +f3(); +---- + + + + + + + + +:relfileprefix: ../ +[#T-08friend] + +== f1 + + + +=== Synopsis + +Declared in header `` + +[source,cpp,subs="verbatim,macros,-callouts"] +---- +friend +void +f1(); +---- + + + +Created with MrDocs diff --git a/test-files/golden-tests/ns-variables.adoc b/test-files/golden-tests/ns-variables.adoc new file mode 100644 index 000000000..a76cd3d89 --- /dev/null +++ b/test-files/golden-tests/ns-variables.adoc @@ -0,0 +1,223 @@ += Reference +:mrdocs: + +[#index] + +== Global namespace + +=== Types +[cols=2,separator=¦] +|=== +¦Name ¦Description +¦xref:T.adoc[`T`] ¦ + +|=== +=== Variables +[cols=2,separator=¦] +|=== +¦Name ¦Description +¦xref:i.adoc[`i`] ¦ + +¦xref:j.adoc[`j`] ¦ + +¦xref:k.adoc[`k`] ¦ + +¦xref:l.adoc[`l`] ¦ + +¦xref:pi.adoc[`pi`] ¦ + +¦xref:t.adoc[`t`] ¦ + +¦xref:x0.adoc[`x0`] ¦ + +¦xref:x1.adoc[`x1`] ¦ + +¦xref:x2.adoc[`x2`] ¦ + +|=== + + +[#i] + +== i + + + +=== Synopsis + +Declared in header `` + +[source,cpp,subs="verbatim,macros,-callouts"] +---- +constexpr +int const i = 0; +---- + + + +[#j] + +== j + + + +=== Synopsis + +Declared in header `` + +[source,cpp,subs="verbatim,macros,-callouts"] +---- +int j = 0; +---- + + + +[#k] + +== k + + + +=== Synopsis + +Declared in header `` + +[source,cpp,subs="verbatim,macros,-callouts"] +---- +constexpr +extern +int const k = 1; +---- + + + +[#l] + +== l + + + +=== Synopsis + +Declared in header `` + +[source,cpp,subs="verbatim,macros,-callouts"] +---- +extern +int l = 1; +---- + + + +[#pi] + +== pi + + + +=== Synopsis + +Declared in header `` + +[source,cpp,subs="verbatim,macros,-callouts"] +---- +double pi = 3.14; +---- + + + +[#T] + +== T + + + +=== Synopsis + +Declared in header `` + +[source,cpp,subs="verbatim,macros,-callouts"] +---- +struct T; +---- + + + + + +[#t] + +== t + + + +=== Synopsis + +Declared in header `` + +[source,cpp,subs="verbatim,macros,-callouts"] +---- +extern +xref:T.adoc[T] t; +---- + + + +[#x0] + +== x0 + + + +=== Synopsis + +Declared in header `` + +[source,cpp,subs="verbatim,macros,-callouts"] +---- +thread_local +int x0 = 0; +---- + + + +[#x1] + +== x1 + + + +=== Synopsis + +Declared in header `` + +[source,cpp,subs="verbatim,macros,-callouts"] +---- +static +thread_local +int x1 = 0; +---- + + + +[#x2] + +== x2 + + + +=== Synopsis + +Declared in header `` + +[source,cpp,subs="verbatim,macros,-callouts"] +---- +constexpr +static +thread_local +int const x2 = 0; +---- + + + +Created with MrDocs diff --git a/test-files/golden-tests/out-of-line-record-def.adoc b/test-files/golden-tests/out-of-line-record-def.adoc new file mode 100644 index 000000000..56aef250a --- /dev/null +++ b/test-files/golden-tests/out-of-line-record-def.adoc @@ -0,0 +1,49 @@ += Reference +:mrdocs: + +[#index] + +== Global namespace + +=== Namespaces +[cols=2,separator=¦] +|=== +¦Name ¦Description +¦xref:N.adoc[`N`] ¦ + +|=== + + +[#N] + +== N + +=== Types +[cols=2,separator=¦] +|=== +¦Name ¦Description +¦xref:N/S.adoc[`S`] ¦ + +|=== + +:relfileprefix: ../ +[#N-S] + +== xref:N.adoc[pass:[N]]::S + + + +=== Synopsis + +Declared in header `` + +[source,cpp,subs="verbatim,macros,-callouts"] +---- +struct S; +---- + + + + + +Created with MrDocs diff --git a/test-files/golden-tests/overloaded-op-1.adoc b/test-files/golden-tests/overloaded-op-1.adoc new file mode 100644 index 000000000..ba313bc95 --- /dev/null +++ b/test-files/golden-tests/overloaded-op-1.adoc @@ -0,0 +1,67 @@ += Reference +:mrdocs: + +[#index] + +== Global namespace + +=== Types +[cols=2,separator=¦] +|=== +¦Name ¦Description +¦xref:T.adoc[`T`] ¦ + +|=== + + +[#T] + +== T + + + +=== Synopsis + +Declared in header `` + +[source,cpp,subs="verbatim,macros,-callouts"] +---- +struct T; +---- + +=== Member Functions +[cols=2,separator=¦] +|=== +¦Name ¦Description +¦xref:T/operator_plus.adoc[`operator+`] ¦ + +|=== + + + +:relfileprefix: ../ +[#T-operator_plus] + +== xref:T.adoc[pass:[T]]::operator+ + + + +=== Synopsis + +Declared in header `` + +[source,cpp,subs="verbatim,macros,-callouts"] +---- +xref:T.adoc[T] +operator+(); +---- + + + + + + + + + +Created with MrDocs diff --git a/test-files/golden-tests/overloaded-op-2.adoc b/test-files/golden-tests/overloaded-op-2.adoc new file mode 100644 index 000000000..220e93b06 --- /dev/null +++ b/test-files/golden-tests/overloaded-op-2.adoc @@ -0,0 +1,67 @@ += Reference +:mrdocs: + +[#index] + +== Global namespace + +=== Types +[cols=2,separator=¦] +|=== +¦Name ¦Description +¦xref:T.adoc[`T`] ¦ + +|=== + + +[#T] + +== T + + + +=== Synopsis + +Declared in header `` + +[source,cpp,subs="verbatim,macros,-callouts"] +---- +struct T; +---- + +=== Member Functions +[cols=2,separator=¦] +|=== +¦Name ¦Description +¦xref:T/operator_plus.adoc[`operator+`] ¦ + +|=== + + + +:relfileprefix: ../ +[#T-operator_plus] + +== xref:T.adoc[pass:[T]]::operator+ + + + +=== Synopsis + +Declared in header `` + +[source,cpp,subs="verbatim,macros,-callouts"] +---- +xref:T.adoc[T] +operator+(xref:T.adoc[T]); +---- + + + + + + + + + +Created with MrDocs diff --git a/test-files/golden-tests/para-1.adoc b/test-files/golden-tests/para-1.adoc new file mode 100644 index 000000000..afe59cb80 --- /dev/null +++ b/test-files/golden-tests/para-1.adoc @@ -0,0 +1,133 @@ += Reference +:mrdocs: + +[#index] + +== Global namespace + +=== Functions +[cols=2,separator=¦] +|=== +¦Name ¦Description +¦xref:f1.adoc[`f1`] ¦ + +¦xref:f2.adoc[`f2`] ¦ + +¦xref:f3.adoc[`f3`] ¦ + +¦xref:f4.adoc[`f4`] ¦ + +brief + +|=== + + +[#f1] + +== f1 + + + +=== Synopsis + +Declared in header `` + +[source,cpp,subs="verbatim,macros,-callouts"] +---- +void +f1(); +---- + + + + + + + + + +[#f2] + +== f2 + + + +=== Synopsis + +Declared in header `` + +[source,cpp,subs="verbatim,macros,-callouts"] +---- +void +f2(); +---- + + + + + + + + + +[#f3] + +== f3 + + + +=== Synopsis + +Declared in header `` + +[source,cpp,subs="verbatim,macros,-callouts"] +---- +void +f3(); +---- + + + + + + + + + +[#f4] + +== f4 + + +brief + + +=== Synopsis + +Declared in header `` + +[source,cpp,subs="verbatim,macros,-callouts"] +---- +void +f4(); +---- + +=== Description + + +a + +b + +c + + + + + + + + + + +Created with MrDocs diff --git a/test-files/golden-tests/para-2.adoc b/test-files/golden-tests/para-2.adoc new file mode 100644 index 000000000..5bde4744b --- /dev/null +++ b/test-files/golden-tests/para-2.adoc @@ -0,0 +1,54 @@ += Reference +:mrdocs: + +[#index] + +== Global namespace + +=== Functions +[cols=2,separator=¦] +|=== +¦Name ¦Description +¦xref:f1.adoc[`f1`] ¦ + +brief + +|=== + + +[#f1] + +== f1 + + +brief + + +=== Synopsis + +Declared in header `` + +[source,cpp,subs="verbatim,macros,-callouts"] +---- +void +f1(); +---- + +=== Description + + +a +b +c +d + + + + + + + + + + +Created with MrDocs diff --git a/test-files/golden-tests/param-direction.adoc b/test-files/golden-tests/param-direction.adoc new file mode 100644 index 000000000..2bbdfc1ae --- /dev/null +++ b/test-files/golden-tests/param-direction.adoc @@ -0,0 +1,402 @@ += Reference +:mrdocs: + +[#index] + +== Global namespace + +=== Functions +[cols=2,separator=¦] +|=== +¦Name ¦Description +¦xref:f.adoc[`f`] ¦ + +¦xref:g.adoc[`g`] ¦ + +¦xref:h.adoc[`h`] ¦ + +¦xref:i.adoc[`i`] ¦ + +¦xref:j.adoc[`j`] ¦ + +¦xref:k.adoc[`k`] ¦ + +¦xref:l.adoc[`l`] ¦ + +¦xref:m.adoc[`m`] ¦ + +¦xref:n.adoc[`n`] ¦ + +¦xref:o.adoc[`o`] ¦ + +|=== + + +[#f] + +== f + + + +=== Synopsis + +Declared in header `` + +[source,cpp,subs="verbatim,macros,-callouts"] +---- +void +f(int x0); +---- + + + + + +=== Parameters + +|=== +| Name | Description + +| *x0* +| +|=== + + + + + +[#g] + +== g + + + +=== Synopsis + +Declared in header `` + +[source,cpp,subs="verbatim,macros,-callouts"] +---- +void +g( + int x1, + int y1); +---- + + + + + +=== Parameters + +|=== +| Name | Description + +| *x1* +| +| *y1* +| +|=== + + + + + +[#h] + +== h + + + +=== Synopsis + +Declared in header `` + +[source,cpp,subs="verbatim,macros,-callouts"] +---- +void +h( + int x2, + int y2); +---- + + + + + +=== Parameters + +|=== +| Name | Description + +| *x2* +| +| *y2* +| +|=== + + + + + +[#i] + +== i + + + +=== Synopsis + +Declared in header `` + +[source,cpp,subs="verbatim,macros,-callouts"] +---- +void +i( + int x3, + int y3); +---- + + + + + +=== Parameters + +|=== +| Name | Description + +| *x3* +| +| *y3* +| +|=== + + + + + +[#j] + +== j + + + +=== Synopsis + +Declared in header `` + +[source,cpp,subs="verbatim,macros,-callouts"] +---- +void +j( + int x4, + int y4); +---- + + + + + +=== Parameters + +|=== +| Name | Description + +| *x4* +| +| *y4* +| +|=== + + + + + +[#k] + +== k + + + +=== Synopsis + +Declared in header `` + +[source,cpp,subs="verbatim,macros,-callouts"] +---- +void +k( + int x5, + int y5, + int z5); +---- + + + + + +=== Parameters + +|=== +| Name | Description + +| *x5* +| +| *y5* +| +| *z5* +| +|=== + + + + + +[#l] + +== l + + + +=== Synopsis + +Declared in header `` + +[source,cpp,subs="verbatim,macros,-callouts"] +---- +void +l( + int x6, + int y6, + int, + int z6); +---- + + + + + +=== Parameters + +|=== +| Name | Description + +| *x6* +| +| *y6* +| +| *z6* +| +|=== + + + + + +[#m] + +== m + + + +=== Synopsis + +Declared in header `` + +[source,cpp,subs="verbatim,macros,-callouts"] +---- +void +m( + int x7, + int y7); +---- + + + + + +=== Parameters + +|=== +| Name | Description + +| *x7* +| +| *y7* +| +|=== + + + + + +[#n] + +== n + + + +=== Synopsis + +Declared in header `` + +[source,cpp,subs="verbatim,macros,-callouts"] +---- +void +n(int x8); +---- + + + + + +=== Parameters + +|=== +| Name | Description + +| *x8* +| +|=== + + + + + +[#o] + +== o + + + +=== Synopsis + +Declared in header `` + +[source,cpp,subs="verbatim,macros,-callouts"] +---- +void +o(int x9); +---- + + + + + +=== Parameters + +|=== +| Name | Description + +| *x9* +| +| *x9* +| +|=== + + + + + +Created with MrDocs diff --git a/test-files/golden-tests/param.adoc b/test-files/golden-tests/param.adoc new file mode 100644 index 000000000..896ca5d0d --- /dev/null +++ b/test-files/golden-tests/param.adoc @@ -0,0 +1,176 @@ += Reference +:mrdocs: + +[#index] + +== Global namespace + +=== Functions +[cols=2,separator=¦] +|=== +¦Name ¦Description +¦xref:f.adoc[`f`] ¦ + +¦xref:g.adoc[`g`] ¦ + +¦xref:h.adoc[`h`] ¦ + +¦xref:i.adoc[`i`] ¦ + +|=== + + +[#f] + +== f + + + +=== Synopsis + +Declared in header `` + +[source,cpp,subs="verbatim,macros,-callouts"] +---- +void +f(int x); +---- + + + + + +=== Parameters + +|=== +| Name | Description + +| *x* +| +|=== + + + + + +[#g] + +== g + + + +=== Synopsis + +Declared in header `` + +[source,cpp,subs="verbatim,macros,-callouts"] +---- +void +g( + int x, + int y); +---- + + + + + +=== Parameters + +|=== +| Name | Description + +| *x* +| +| *y* +| +|=== + + + + + +[#h] + +== h + + + +=== Synopsis + +Declared in header `` + +[source,cpp,subs="verbatim,macros,-callouts"] +---- +void +h( + int x, + int y, + int z); +---- + + + + + +=== Parameters + +|=== +| Name | Description + +| *x* +| +| *y* +| +| *z* +| +|=== + + + + + +[#i] + +== i + + + +=== Synopsis + +Declared in header `` + +[source,cpp,subs="verbatim,macros,-callouts"] +---- +void +i( + int w, + int x, + int y, + int z); +---- + + + + + +=== Parameters + +|=== +| Name | Description + +| *w* +| +| *x* +| +| *y* +| +| *z* +| +|=== + + + + + +Created with MrDocs diff --git a/test-files/golden-tests/pre-post.adoc b/test-files/golden-tests/pre-post.adoc new file mode 100644 index 000000000..9794818c1 --- /dev/null +++ b/test-files/golden-tests/pre-post.adoc @@ -0,0 +1,56 @@ += Reference +:mrdocs: + +[#index] + +== Global namespace + +=== Functions +[cols=2,separator=¦] +|=== +¦Name ¦Description +¦xref:f.adoc[`f`] ¦ + +|=== + + +[#f] + +== f + + + +=== Synopsis + +Declared in header `` + +[source,cpp,subs="verbatim,macros,-callouts"] +---- +void +f(); +---- + + + + + + +=== Preconditions + + +first precondition + + +second precondition + + + +=== Postconditions + + +first postcondition + + + + +Created with MrDocs diff --git a/test-files/golden-tests/record-1.adoc b/test-files/golden-tests/record-1.adoc new file mode 100644 index 000000000..928b88941 --- /dev/null +++ b/test-files/golden-tests/record-1.adoc @@ -0,0 +1,286 @@ += Reference +:mrdocs: + +[#index] + +== Global namespace + +=== Types +[cols=2,separator=¦] +|=== +¦Name ¦Description +¦xref:T.adoc[`T`] ¦ + +|=== + + +[#T] + +== T + + + +=== Synopsis + +Declared in header `` + +[source,cpp,subs="verbatim,macros,-callouts"] +---- +struct T; +---- + +=== Types +[cols=2,separator=¦] +|=== +¦Name ¦Description +¦xref:T/U1.adoc[`U1`] ¦ + +¦xref:T/U2.adoc[`U2`] ¦ + +|=== +=== Member Functions +[cols=2,separator=¦] +|=== +¦Name ¦Description +¦xref:T/f1.adoc[`f1`] ¦ + +¦xref:T/f2.adoc[`f2`] ¦ + +¦xref:T/f3.adoc[`f3`] ¦ + +|=== +=== Protected Member Functions +[cols=2,separator=¦] +|=== +¦Name ¦Description +¦xref:T/g1.adoc[`g1`] ¦ + +brief-g1 + +¦xref:T/g2.adoc[`g2`] ¦ + +brief-g2 + +¦xref:T/g3.adoc[`g3`] ¦ + +brief-g3 + +|=== + + + +:relfileprefix: ../ +[#T-U1] + +== xref:T.adoc[pass:[T]]::U1 + + + +=== Synopsis + +Declared in header `` + +[source,cpp,subs="verbatim,macros,-callouts"] +---- +using U1 = int; +---- + + +:relfileprefix: ../ +[#T-U2] + +== xref:T.adoc[pass:[T]]::U2 + + + +=== Synopsis + +Declared in header `` + +[source,cpp,subs="verbatim,macros,-callouts"] +---- +typedef char U2; +---- + + +:relfileprefix: ../ +[#T-f1] + +== xref:T.adoc[pass:[T]]::f1 + + + +=== Synopsis + +Declared in header `` + +[source,cpp,subs="verbatim,macros,-callouts"] +---- +void +f1(); +---- + + + + + + + + +:relfileprefix: ../ +[#T-f2] + +== xref:T.adoc[pass:[T]]::f2 + + + +=== Synopsis + +Declared in header `` + +[source,cpp,subs="verbatim,macros,-callouts"] +---- +int +f2(); +---- + + + + + + + + +:relfileprefix: ../ +[#T-f3] + +== xref:T.adoc[pass:[T]]::f3 + + + +=== Synopsis + +Declared in header `` + +[source,cpp,subs="verbatim,macros,-callouts"] +---- +char +f3(); +---- + + + + + + + + +:relfileprefix: ../ +[#T-g1] + +== xref:T.adoc[pass:[T]]::g1 + + +brief-g1 + + +=== Synopsis + +Declared in header `` + +[source,cpp,subs="verbatim,macros,-callouts"] +---- +void +g1(); +---- + +=== Description + + +desc + + + + + + + + + +:relfileprefix: ../ +[#T-g2] + +== xref:T.adoc[pass:[T]]::g2 + + +brief-g2 + + +=== Synopsis + +Declared in header `` + +[source,cpp,subs="verbatim,macros,-callouts"] +---- +int +g2(); +---- + + + +=== Return Value + + +the number 2 + + + + + + + +:relfileprefix: ../ +[#T-g3] + +== xref:T.adoc[pass:[T]]::g3 + + +brief-g3 + + +=== Synopsis + +Declared in header `` + +[source,cpp,subs="verbatim,macros,-callouts"] +---- +char +g3(int x); +---- + + + +=== Return Value + + +the separator + + + + +=== Parameters + +|=== +| Name | Description + +| *x* +| +any old number + +|=== + + + + + +Created with MrDocs diff --git a/test-files/golden-tests/record-access.adoc b/test-files/golden-tests/record-access.adoc new file mode 100644 index 000000000..be9906f52 --- /dev/null +++ b/test-files/golden-tests/record-access.adoc @@ -0,0 +1,357 @@ += Reference +:mrdocs: + +[#index] + +== Global namespace + +=== Types +[cols=2,separator=¦] +|=== +¦Name ¦Description +¦xref:C0.adoc[`C0`] ¦ + +¦xref:S0.adoc[`S0`] ¦ + +¦xref:U0.adoc[`U0`] ¦ + +|=== + + +[#S0] + +== S0 + + + +=== Synopsis + +Declared in header `` + +[source,cpp,subs="verbatim,macros,-callouts"] +---- +struct S0; +---- + +=== Member Functions +[cols=2,separator=¦] +|=== +¦Name ¦Description +¦xref:S0/f0.adoc[`f0`] ¦ + +|=== +=== Protected Member Functions +[cols=2,separator=¦] +|=== +¦Name ¦Description +¦xref:S0/f1.adoc[`f1`] ¦ + +|=== +=== Private Member Functions +[cols=2,separator=¦] +|=== +¦Name ¦Description +¦xref:S0/f2.adoc[`f2`] ¦ + +|=== + + + +:relfileprefix: ../ +[#S0-f0] + +== xref:S0.adoc[pass:[S0]]::f0 + + + +=== Synopsis + +Declared in header `` + +[source,cpp,subs="verbatim,macros,-callouts"] +---- +void +f0(); +---- + + + + + + + + +:relfileprefix: ../ +[#S0-f1] + +== xref:S0.adoc[pass:[S0]]::f1 + + + +=== Synopsis + +Declared in header `` + +[source,cpp,subs="verbatim,macros,-callouts"] +---- +void +f1(); +---- + + + + + + + + +:relfileprefix: ../ +[#S0-f2] + +== xref:S0.adoc[pass:[S0]]::f2 + + + +=== Synopsis + +Declared in header `` + +[source,cpp,subs="verbatim,macros,-callouts"] +---- +void +f2(); +---- + + + + + + + + + +[#C0] + +== C0 + + + +=== Synopsis + +Declared in header `` + +[source,cpp,subs="verbatim,macros,-callouts"] +---- +class C0; +---- + +=== Member Functions +[cols=2,separator=¦] +|=== +¦Name ¦Description +¦xref:C0/f2.adoc[`f2`] ¦ + +|=== +=== Protected Member Functions +[cols=2,separator=¦] +|=== +¦Name ¦Description +¦xref:C0/f1.adoc[`f1`] ¦ + +|=== +=== Private Member Functions +[cols=2,separator=¦] +|=== +¦Name ¦Description +¦xref:C0/f0.adoc[`f0`] ¦ + +|=== + + + +:relfileprefix: ../ +[#C0-f0] + +== xref:C0.adoc[pass:[C0]]::f0 + + + +=== Synopsis + +Declared in header `` + +[source,cpp,subs="verbatim,macros,-callouts"] +---- +void +f0(); +---- + + + + + + + + +:relfileprefix: ../ +[#C0-f1] + +== xref:C0.adoc[pass:[C0]]::f1 + + + +=== Synopsis + +Declared in header `` + +[source,cpp,subs="verbatim,macros,-callouts"] +---- +void +f1(); +---- + + + + + + + + +:relfileprefix: ../ +[#C0-f2] + +== xref:C0.adoc[pass:[C0]]::f2 + + + +=== Synopsis + +Declared in header `` + +[source,cpp,subs="verbatim,macros,-callouts"] +---- +void +f2(); +---- + + + + + + + + + +[#U0] + +== U0 + + + +=== Synopsis + +Declared in header `` + +[source,cpp,subs="verbatim,macros,-callouts"] +---- +union U0; +---- + +=== Member Functions +[cols=2,separator=¦] +|=== +¦Name ¦Description +¦xref:U0/f0.adoc[`f0`] ¦ + +|=== +=== Protected Member Functions +[cols=2,separator=¦] +|=== +¦Name ¦Description +¦xref:U0/f1.adoc[`f1`] ¦ + +|=== +=== Private Member Functions +[cols=2,separator=¦] +|=== +¦Name ¦Description +¦xref:U0/f2.adoc[`f2`] ¦ + +|=== + + + +:relfileprefix: ../ +[#U0-f0] + +== xref:U0.adoc[pass:[U0]]::f0 + + + +=== Synopsis + +Declared in header `` + +[source,cpp,subs="verbatim,macros,-callouts"] +---- +void +f0(); +---- + + + + + + + + +:relfileprefix: ../ +[#U0-f1] + +== xref:U0.adoc[pass:[U0]]::f1 + + + +=== Synopsis + +Declared in header `` + +[source,cpp,subs="verbatim,macros,-callouts"] +---- +void +f1(); +---- + + + + + + + + +:relfileprefix: ../ +[#U0-f2] + +== xref:U0.adoc[pass:[U0]]::f2 + + + +=== Synopsis + +Declared in header `` + +[source,cpp,subs="verbatim,macros,-callouts"] +---- +void +f2(); +---- + + + + + + + + + +Created with MrDocs diff --git a/test-files/golden-tests/record-data.adoc b/test-files/golden-tests/record-data.adoc new file mode 100644 index 000000000..579fe4a14 --- /dev/null +++ b/test-files/golden-tests/record-data.adoc @@ -0,0 +1,463 @@ += Reference +:mrdocs: + +[#index] + +== Global namespace + +=== Types +[cols=2,separator=¦] +|=== +¦Name ¦Description +¦xref:T.adoc[`T`] ¦ + +¦xref:U.adoc[`U`] ¦ + +¦xref:V.adoc[`V`] ¦ + +¦xref:W.adoc[`W`] ¦ + +¦xref:X.adoc[`X`] ¦ + +|=== + + +[#T] + +== T + + + +=== Synopsis + +Declared in header `` + +[source,cpp,subs="verbatim,macros,-callouts"] +---- +struct T; +---- + +=== Data Members +[cols=2,separator=¦] +|=== +¦Name ¦Description +¦xref:T/i.adoc[`i`] ¦ + +¦xref:T/j.adoc[`j`] ¦ + +¦xref:T/k.adoc[`k`] ¦ + +¦xref:T/l.adoc[`l`] ¦ + +¦xref:T/m.adoc[`m`] ¦ + +|=== + + + +:relfileprefix: ../ +[#T-i] + +== xref:T.adoc[pass:[T]]::i + + + +=== Synopsis + +Declared in header `` + +[source,cpp,subs="verbatim,macros,-callouts"] +---- +int i; +---- + + +:relfileprefix: ../ +[#T-j] + +== xref:T.adoc[pass:[T]]::j + + + +=== Synopsis + +Declared in header `` + +[source,cpp,subs="verbatim,macros,-callouts"] +---- +double j; +---- + + +:relfileprefix: ../ +[#T-k] + +== xref:T.adoc[pass:[T]]::k + + + +=== Synopsis + +Declared in header `` + +[source,cpp,subs="verbatim,macros,-callouts"] +---- +mutable +int k; +---- + + +:relfileprefix: ../ +[#T-l] + +== xref:T.adoc[pass:[T]]::l + + + +=== Synopsis + +Declared in header `` + +[source,cpp,subs="verbatim,macros,-callouts"] +---- +int l : 8; +---- + + +:relfileprefix: ../ +[#T-m] + +== xref:T.adoc[pass:[T]]::m + + + +=== Synopsis + +Declared in header `` + +[source,cpp,subs="verbatim,macros,-callouts"] +---- +int m : 4 + 4; +---- + + + +[#U] + +== U + + + +=== Synopsis + +Declared in header `` + +[source,cpp,subs="verbatim,macros,-callouts"] +---- +struct U; +---- + +=== Data Members +[cols=2,separator=¦] +|=== +¦Name ¦Description +¦xref:U/t.adoc[`t`] ¦ + +|=== + + + +:relfileprefix: ../ +[#U-t] + +== xref:U.adoc[pass:[U]]::t + + + +=== Synopsis + +Declared in header `` + +[source,cpp,subs="verbatim,macros,-callouts"] +---- +xref:T.adoc[T] t; +---- + + + +[#V] + +== V + + + +=== Synopsis + +Declared in header `` + +[source,cpp,subs="verbatim,macros,-callouts"] +---- +class V; +---- + +=== Protected Data Members +[cols=2,separator=¦] +|=== +¦Name ¦Description +¦xref:V/j.adoc[`j`] ¦ + +|=== +=== Private Data Members +[cols=2,separator=¦] +|=== +¦Name ¦Description +¦xref:V/i.adoc[`i`] ¦ + +¦xref:V/k.adoc[`k`] ¦ + +|=== + + + +:relfileprefix: ../ +[#V-i] + +== xref:V.adoc[pass:[V]]::i + + + +=== Synopsis + +Declared in header `` + +[source,cpp,subs="verbatim,macros,-callouts"] +---- +int i; +---- + + +:relfileprefix: ../ +[#V-j] + +== xref:V.adoc[pass:[V]]::j + + + +=== Synopsis + +Declared in header `` + +[source,cpp,subs="verbatim,macros,-callouts"] +---- +unsigned long j; +---- + + +:relfileprefix: ../ +[#V-k] + +== xref:V.adoc[pass:[V]]::k + + + +=== Synopsis + +Declared in header `` + +[source,cpp,subs="verbatim,macros,-callouts"] +---- +double k; +---- + + + +[#W] + +== W + + + +=== Synopsis + +Declared in header `` + +[source,cpp,subs="verbatim,macros,-callouts"] +---- +struct W; +---- + +=== Data Members +[cols=2,separator=¦] +|=== +¦Name ¦Description +¦xref:W/buf.adoc[`buf`] ¦ + +|=== + + + +:relfileprefix: ../ +[#W-buf] + +== xref:W.adoc[pass:[W]]::buf + + + +=== Synopsis + +Declared in header `` + +[source,cpp,subs="verbatim,macros,-callouts"] +---- +char buf[64]; +---- + + + +[#X] + +== X + + + +=== Synopsis + +Declared in header `` + +[source,cpp,subs="verbatim,macros,-callouts"] +---- +template< + typename P, + int I> +struct X; +---- + +=== Types +[cols=2,separator=¦] +|=== +¦Name ¦Description +¦xref:X/Q.adoc[`Q`] ¦ + +|=== +=== Data Members +[cols=2,separator=¦] +|=== +¦Name ¦Description +¦xref:X/x0.adoc[`x0`] ¦ + +¦xref:X/x1.adoc[`x1`] ¦ + +¦xref:X/x2.adoc[`x2`] ¦ + +¦xref:X/x3.adoc[`x3`] ¦ + +¦xref:X/x4.adoc[`x4`] ¦ + +|=== + + + +:relfileprefix: ../ +[#X-Q] + +== xref:X.adoc[pass:[X]]::Q + + + +=== Synopsis + +Declared in header `` + +[source,cpp,subs="verbatim,macros,-callouts"] +---- +using Q = P; +---- + + +:relfileprefix: ../ +[#X-x0] + +== xref:X.adoc[pass:[X]]::x0 + + + +=== Synopsis + +Declared in header `` + +[source,cpp,subs="verbatim,macros,-callouts"] +---- +int x0 = 0; +---- + + +:relfileprefix: ../ +[#X-x1] + +== xref:X.adoc[pass:[X]]::x1 + + + +=== Synopsis + +Declared in header `` + +[source,cpp,subs="verbatim,macros,-callouts"] +---- +P x1; +---- + + +:relfileprefix: ../ +[#X-x2] + +== xref:X.adoc[pass:[X]]::x2 + + + +=== Synopsis + +Declared in header `` + +[source,cpp,subs="verbatim,macros,-callouts"] +---- +P const x2[32]; +---- + + +:relfileprefix: ../ +[#X-x3] + +== xref:X.adoc[pass:[X]]::x3 + + + +=== Synopsis + +Declared in header `` + +[source,cpp,subs="verbatim,macros,-callouts"] +---- +xref:X/Q.adoc[Q] x3; +---- + + +:relfileprefix: ../ +[#X-x4] + +== xref:X.adoc[pass:[X]]::x4 + + + +=== Synopsis + +Declared in header `` + +[source,cpp,subs="verbatim,macros,-callouts"] +---- +int x4 : I + 4; +---- + + + +Created with MrDocs diff --git a/test-files/golden-tests/record-inheritance.adoc b/test-files/golden-tests/record-inheritance.adoc new file mode 100644 index 000000000..36ea26f4e --- /dev/null +++ b/test-files/golden-tests/record-inheritance.adoc @@ -0,0 +1,367 @@ += Reference +:mrdocs: + +[#index] + +== Global namespace + +=== Types +[cols=2,separator=¦] +|=== +¦Name ¦Description +¦xref:C0.adoc[`C0`] ¦ + +¦xref:C1.adoc[`C1`] ¦ + +¦xref:C2.adoc[`C2`] ¦ + +¦xref:C3.adoc[`C3`] ¦ + +¦xref:C4.adoc[`C4`] ¦ + +¦xref:C5.adoc[`C5`] ¦ + +¦xref:C6.adoc[`C6`] ¦ + +¦xref:C7.adoc[`C7`] ¦ + +¦xref:S0.adoc[`S0`] ¦ + +¦xref:S1.adoc[`S1`] ¦ + +¦xref:S2.adoc[`S2`] ¦ + +¦xref:S3.adoc[`S3`] ¦ + +¦xref:S4.adoc[`S4`] ¦ + +¦xref:S5.adoc[`S5`] ¦ + +¦xref:S6.adoc[`S6`] ¦ + +¦xref:U0.adoc[`U0`] ¦ + +|=== + + +[#S0] + +== S0 + + + +=== Synopsis + +Declared in header `` + +[source,cpp,subs="verbatim,macros,-callouts"] +---- +struct S0; +---- + + + + + +[#C0] + +== C0 + + + +=== Synopsis + +Declared in header `` + +[source,cpp,subs="verbatim,macros,-callouts"] +---- +class C0; +---- + + + + + +[#U0] + +== U0 + + + +=== Synopsis + +Declared in header `` + +[source,cpp,subs="verbatim,macros,-callouts"] +---- +union U0; +---- + + + + + +[#S1] + +== S1 + + + +=== Synopsis + +Declared in header `` + +[source,cpp,subs="verbatim,macros,-callouts"] +---- +struct S1; +---- + + + + + +[#S2] + +== S2 + + + +=== Synopsis + +Declared in header `` + +[source,cpp,subs="verbatim,macros,-callouts"] +---- +struct S2 + : xref:S0.adoc[S0]; +---- + + + + + +[#S3] + +== S3 + + + +=== Synopsis + +Declared in header `` + +[source,cpp,subs="verbatim,macros,-callouts"] +---- +struct S3 + : xref:S1.adoc[S1]; +---- + + + + + +[#S4] + +== S4 + + + +=== Synopsis + +Declared in header `` + +[source,cpp,subs="verbatim,macros,-callouts"] +---- +struct S4 + : xref:S2.adoc[S2] + , xref:S3.adoc[S3]; +---- + + + + + +[#C1] + +== C1 + + + +=== Synopsis + +Declared in header `` + +[source,cpp,subs="verbatim,macros,-callouts"] +---- +class C1 + : xref:C0.adoc[C0]; +---- + + + + + +[#C2] + +== C2 + + + +=== Synopsis + +Declared in header `` + +[source,cpp,subs="verbatim,macros,-callouts"] +---- +class C2 + : public xref:C0.adoc[C0]; +---- + + + + + +[#C3] + +== C3 + + + +=== Synopsis + +Declared in header `` + +[source,cpp,subs="verbatim,macros,-callouts"] +---- +class C3 + : protected xref:C0.adoc[C0]; +---- + + + + + +[#C4] + +== C4 + + + +=== Synopsis + +Declared in header `` + +[source,cpp,subs="verbatim,macros,-callouts"] +---- +class C4 + : xref:C0.adoc[C0]; +---- + + + + + +[#C5] + +== C5 + + + +=== Synopsis + +Declared in header `` + +[source,cpp,subs="verbatim,macros,-callouts"] +---- +class C5 + : virtual xref:C0.adoc[C0]; +---- + + + + + +[#C6] + +== C6 + + + +=== Synopsis + +Declared in header `` + +[source,cpp,subs="verbatim,macros,-callouts"] +---- +class C6 + : virtual xref:C1.adoc[C1]; +---- + + + + + +[#C7] + +== C7 + + + +=== Synopsis + +Declared in header `` + +[source,cpp,subs="verbatim,macros,-callouts"] +---- +class C7 + : public xref:C5.adoc[C5] + , public xref:C6.adoc[C6]; +---- + + + + + +[#S5] + +== S5 + + + +=== Synopsis + +Declared in header `` + +[source,cpp,subs="verbatim,macros,-callouts"] +---- +struct S5 + : private xref:S0.adoc[S0] + , protected xref:S1.adoc[S1]; +---- + + + + + +[#S6] + +== S6 + + + +=== Synopsis + +Declared in header `` + +[source,cpp,subs="verbatim,macros,-callouts"] +---- +template +struct S6 + : Ts...; +---- + + + + + +Created with MrDocs diff --git a/test-files/golden-tests/ref.adoc b/test-files/golden-tests/ref.adoc new file mode 100644 index 000000000..ce30898d6 --- /dev/null +++ b/test-files/golden-tests/ref.adoc @@ -0,0 +1,1580 @@ += Reference +:mrdocs: + +[#index] + +== Global namespace + +=== Namespaces +[cols=2,separator=¦] +|=== +¦Name ¦Description +¦xref:A.adoc[`A`] ¦ + +|=== +=== Types +[cols=2,separator=¦] +|=== +¦Name ¦Description +¦xref:F.adoc[`F`] ¦ + +|=== +=== Functions +[cols=2,separator=¦] +|=== +¦Name ¦Description +¦xref:f0.adoc[`f0`] ¦ + +¦xref:f5.adoc[`f5`] ¦ + +See +xref:A/f1.adoc[A::f1] + +¦xref:f6.adoc[`f6`] ¦ + +See +xref:F/operator_bitnot.adoc[F::operator~] + +|=== + + +[#f0] + +== f0 + + + +=== Synopsis + +Declared in header `` + +[source,cpp,subs="verbatim,macros,-callouts"] +---- +void +f0(); +---- + + + + + + + + + +[#A] + +== A + +=== Types +[cols=2,separator=¦] +|=== +¦Name ¦Description +¦xref:A/B.adoc[`B`] ¦ + +See +xref:A/f1.adoc[f1] + +¦xref:A/C.adoc[`C`] ¦ + +¦xref:A/D.adoc[`D`] ¦ + +|=== +=== Functions +[cols=2,separator=¦] +|=== +¦Name ¦Description +¦xref:A/f1.adoc[`f1`] ¦ + +See +xref:f0.adoc[f0] + +|=== + +:relfileprefix: ../ +[#A-f1] + +== xref:A.adoc[pass:[A]]::f1 + + +See +xref:f0.adoc[f0] + + +=== Synopsis + +Declared in header `` + +[source,cpp,subs="verbatim,macros,-callouts"] +---- +void +f1(); +---- + +=== Description + + +See +xref:f0.adoc[::f0] + + + + + + + + + +:relfileprefix: ../ +[#A-B] + +== xref:A.adoc[pass:[A]]::B + + +See +xref:A/f1.adoc[f1] + + +=== Synopsis + +Declared in header `` + +[source,cpp,subs="verbatim,macros,-callouts"] +---- +template +struct B; +---- + +=== Member Functions +[cols=2,separator=¦] +|=== +¦Name ¦Description +¦xref:A/B/f2.adoc[`f2`] ¦ + +|=== + +=== Description + + +See +xref:A/f1.adoc[A::f1] + +See +xref:A/f1.adoc[::A::f1] + + + + +:relfileprefix: ../../ +[#A-B-f2] + +== xref:A.adoc[pass:[A]]::xref:A/B.adoc[pass:[B]]::f2 + + + +=== Synopsis + +Declared in header `` + +[source,cpp,subs="verbatim,macros,-callouts"] +---- +void +f2(); +---- + + + + + + + + +:relfileprefix: ../ +[#A-C] + +== xref:A.adoc[pass:[A]]::C + + + +=== Synopsis + +Declared in header `` + +[source,cpp,subs="verbatim,macros,-callouts"] +---- +struct C; +---- + +=== Member Functions +[cols=2,separator=¦] +|=== +¦Name ¦Description +¦xref:A/C/f3.adoc[`f3`] ¦ + +¦xref:A/C/f4.adoc[`f4`] ¦ + +|=== + + + +:relfileprefix: ../../ +[#A-C-f3] + +== xref:A.adoc[pass:[A]]::xref:A/C.adoc[pass:[C]]::f3 + + + +=== Synopsis + +Declared in header `` + +[source,cpp,subs="verbatim,macros,-callouts"] +---- +void +f3(); +---- + + + + + + + + +:relfileprefix: ../../ +[#A-C-f4] + +== xref:A.adoc[pass:[A]]::xref:A/C.adoc[pass:[C]]::f4 + + + +=== Synopsis + +Declared in header `` + +[source,cpp,subs="verbatim,macros,-callouts"] +---- +void +f4(); +---- + + + + + + + + +:relfileprefix: ../ +[#A-D] + +== xref:A.adoc[pass:[A]]::D + + + +=== Synopsis + +Declared in header `` + +[source,cpp,subs="verbatim,macros,-callouts"] +---- +struct D + : xref:A/C.adoc[C]; +---- + +=== Types +[cols=2,separator=¦] +|=== +¦Name ¦Description +¦xref:A/D/E.adoc[`E`] ¦ + +See +xref:A/C/f3.adoc[f3] + +|=== +=== Member Functions +[cols=2,separator=¦] +|=== +¦Name ¦Description +¦xref:A/C/f3.adoc[`f3`] ¦ + +¦xref:A/C/f4.adoc[`f4`] ¦ +|=== + + + +:relfileprefix: ../../ +[#A-D-f4] + +== xref:A.adoc[pass:[A]]::xref:A/D.adoc[pass:[D]]::f4 + + + +=== Synopsis + +Declared in header `` + +[source,cpp,subs="verbatim,macros,-callouts"] +---- +void +f4(); +---- + + + + + + + + +:relfileprefix: ../../ +[#A-D-E] + +== xref:A.adoc[pass:[A]]::xref:A/D.adoc[pass:[D]]::E + + +See +xref:A/C/f3.adoc[f3] + + +=== Synopsis + +Declared in header `` + +[source,cpp,subs="verbatim,macros,-callouts"] +---- +struct E; +---- + + +=== Description + + +See +xref:A/D/f4.adoc[f4] + +See +xref:A/C/f4.adoc[C::f4] + + + + + +[#f5] + +== f5 + + +See +xref:A/f1.adoc[A::f1] + + +=== Synopsis + +Declared in header `` + +[source,cpp,subs="verbatim,macros,-callouts"] +---- +void +f5(); +---- + +=== Description + + +See +xref:A/f1.adoc[::A::f1] + + + + + + + + + + +[#F] + +== F + + + +=== Synopsis + +Declared in header `` + +[source,cpp,subs="verbatim,macros,-callouts"] +---- +struct F; +---- + +=== Member Functions +[cols=2,separator=¦] +|=== +¦Name ¦Description +¦xref:F/operator_not.adoc[`operator!`] ¦ + +¦xref:F/operator_not_eq.adoc[`operator!=`] ¦ + +¦xref:F/operator_mod.adoc[`operator%`] ¦ + +¦xref:F/operator_mod_eq.adoc[`operator%=`] ¦ + +¦xref:F/operator_bitand.adoc[`operator&`] ¦ + +¦xref:F/operator_and.adoc[`operator&&`] ¦ + +¦xref:F/operator_and_eq.adoc[`operator&=`] ¦ + +¦xref:F/operator_call.adoc[`operator()`] ¦ + +¦xref:F/operator_star.adoc[`operator*`] ¦ + +¦xref:F/operator_star_eq.adoc[`operator*=`] ¦ + +¦xref:F/operator_plus.adoc[`operator+`] ¦ + +¦xref:F/operator_inc.adoc[`operator++`] ¦ + +¦xref:F/operator_plus_eq.adoc[`operator+=`] ¦ + +¦xref:F/operator_comma.adoc[`operator,`] ¦ + +¦xref:F/operator_minus.adoc[`operator-`] ¦ + +¦xref:F/operator_dec.adoc[`operator--`] ¦ + +¦xref:F/operator_minus_eq.adoc[`operator-=`] ¦ + +¦xref:F/operator_ptr.adoc[`operator->`] ¦ + +¦xref:F/operator_ptrmem.adoc[`operator->*`] ¦ + +¦xref:F/operator_slash.adoc[`operator/`] ¦ + +¦xref:F/operator_slash_eq.adoc[`operator/=`] ¦ + +¦xref:F/operator_lt.adoc[`operator<`] ¦ + +¦xref:F/operator_lshift.adoc[`operator<<`] ¦ + +¦xref:F/operator_lshift_eq.adoc[`operator<<=`] ¦ + +¦xref:F/operator_le.adoc[`operator<=`] ¦ + +¦xref:F/operator_3way.adoc[`operator<=>`] ¦ + +¦xref:F/operator_assign.adoc[`operator=`] ¦ + +¦xref:F/operator_eq.adoc[`operator==`] ¦ + +¦xref:F/operator_gt.adoc[`operator>`] ¦ + +¦xref:F/operator_ge.adoc[`operator>=`] ¦ + +¦xref:F/operator_rshift.adoc[`operator>>`] ¦ + +¦xref:F/operator_rshift_eq.adoc[`operator>>=`] ¦ + +¦xref:F/operator_subs.adoc[`operator[]`] ¦ + +¦xref:F/operator_xor.adoc[`operator^`] ¦ + +¦xref:F/operator_xor_eq.adoc[`operator^=`] ¦ + +¦xref:F/operator_bitor.adoc[`operator|`] ¦ + +¦xref:F/operator_or_eq.adoc[`operator|=`] ¦ + +¦xref:F/operator_or.adoc[`operator||`] ¦ + +¦xref:F/operator_bitnot.adoc[`operator~`] ¦ + +|=== + + + +:relfileprefix: ../ +[#F-operator_bitnot] + +== xref:F.adoc[pass:[F]]::operator~ + + + +=== Synopsis + +Declared in header `` + +[source,cpp,subs="verbatim,macros,-callouts"] +---- +void +operator~(); +---- + + + + + + + + +:relfileprefix: ../ +[#F-operator_comma] + +== xref:F.adoc[pass:[F]]::operator, + + + +=== Synopsis + +Declared in header `` + +[source,cpp,subs="verbatim,macros,-callouts"] +---- +void +operator,(xref:F.adoc[F]&); +---- + + + + + + + + +:relfileprefix: ../ +[#F-operator_call] + +== xref:F.adoc[pass:[F]]::operator() + + + +=== Synopsis + +Declared in header `` + +[source,cpp,subs="verbatim,macros,-callouts"] +---- +void +operator()(xref:F.adoc[F]&); +---- + + + + + + + + +:relfileprefix: ../ +[#F-operator_subs] + +== xref:F.adoc[pass:[F]]::operator[] + + + +=== Synopsis + +Declared in header `` + +[source,cpp,subs="verbatim,macros,-callouts"] +---- +void +operator[](xref:F.adoc[F]&); +---- + + + + + + + + +:relfileprefix: ../ +[#F-operator_plus] + +== xref:F.adoc[pass:[F]]::operator+ + + + +=== Synopsis + +Declared in header `` + +[source,cpp,subs="verbatim,macros,-callouts"] +---- +void +operator+(xref:F.adoc[F]&); +---- + + + + + + + + +:relfileprefix: ../ +[#F-operator_inc] + +== xref:F.adoc[pass:[F]]::operator++ + + + +=== Synopsis + +Declared in header `` + +[source,cpp,subs="verbatim,macros,-callouts"] +---- +void +operator++(); +---- + + + + + + + + +:relfileprefix: ../ +[#F-operator_plus_eq] + +== xref:F.adoc[pass:[F]]::operator+= + + + +=== Synopsis + +Declared in header `` + +[source,cpp,subs="verbatim,macros,-callouts"] +---- +void +operator+=(xref:F.adoc[F]&); +---- + + + + + + + + +:relfileprefix: ../ +[#F-operator_bitand] + +== xref:F.adoc[pass:[F]]::operator& + + + +=== Synopsis + +Declared in header `` + +[source,cpp,subs="verbatim,macros,-callouts"] +---- +void +operator&(xref:F.adoc[F]&); +---- + + + + + + + + +:relfileprefix: ../ +[#F-operator_and] + +== xref:F.adoc[pass:[F]]::operator&& + + + +=== Synopsis + +Declared in header `` + +[source,cpp,subs="verbatim,macros,-callouts"] +---- +void +operator&&(xref:F.adoc[F]&); +---- + + + + + + + + +:relfileprefix: ../ +[#F-operator_and_eq] + +== xref:F.adoc[pass:[F]]::operator&= + + + +=== Synopsis + +Declared in header `` + +[source,cpp,subs="verbatim,macros,-callouts"] +---- +void +operator&=(xref:F.adoc[F]&); +---- + + + + + + + + +:relfileprefix: ../ +[#F-operator_bitor] + +== xref:F.adoc[pass:[F]]::operator| + + + +=== Synopsis + +Declared in header `` + +[source,cpp,subs="verbatim,macros,-callouts"] +---- +void +operator|(xref:F.adoc[F]&); +---- + + + + + + + + +:relfileprefix: ../ +[#F-operator_or] + +== xref:F.adoc[pass:[F]]::operator|| + + + +=== Synopsis + +Declared in header `` + +[source,cpp,subs="verbatim,macros,-callouts"] +---- +void +operator||(xref:F.adoc[F]&); +---- + + + + + + + + +:relfileprefix: ../ +[#F-operator_or_eq] + +== xref:F.adoc[pass:[F]]::operator|= + + + +=== Synopsis + +Declared in header `` + +[source,cpp,subs="verbatim,macros,-callouts"] +---- +void +operator|=(xref:F.adoc[F]&); +---- + + + + + + + + +:relfileprefix: ../ +[#F-operator_minus] + +== xref:F.adoc[pass:[F]]::operator- + + + +=== Synopsis + +Declared in header `` + +[source,cpp,subs="verbatim,macros,-callouts"] +---- +void +operator-(xref:F.adoc[F]&); +---- + + + + + + + + +:relfileprefix: ../ +[#F-operator_dec] + +== xref:F.adoc[pass:[F]]::operator-- + + + +=== Synopsis + +Declared in header `` + +[source,cpp,subs="verbatim,macros,-callouts"] +---- +void +operator--(); +---- + + + + + + + + +:relfileprefix: ../ +[#F-operator_minus_eq] + +== xref:F.adoc[pass:[F]]::operator-= + + + +=== Synopsis + +Declared in header `` + +[source,cpp,subs="verbatim,macros,-callouts"] +---- +void +operator-=(xref:F.adoc[F]&); +---- + + + + + + + + +:relfileprefix: ../ +[#F-operator_ptr] + +== xref:F.adoc[pass:[F]]::operator-> + + + +=== Synopsis + +Declared in header `` + +[source,cpp,subs="verbatim,macros,-callouts"] +---- +void +operator->(); +---- + + + + + + + + +:relfileprefix: ../ +[#F-operator_ptrmem] + +== xref:F.adoc[pass:[F]]::operator->* + + + +=== Synopsis + +Declared in header `` + +[source,cpp,subs="verbatim,macros,-callouts"] +---- +void +operator->*(xref:F.adoc[F]&); +---- + + + + + + + + +:relfileprefix: ../ +[#F-operator_lt] + +== xref:F.adoc[pass:[F]]::operator< + + + +=== Synopsis + +Declared in header `` + +[source,cpp,subs="verbatim,macros,-callouts"] +---- +void +operator<(xref:F.adoc[F]&); +---- + + + + + + + + +:relfileprefix: ../ +[#F-operator_lshift] + +== xref:F.adoc[pass:[F]]::operator<< + + + +=== Synopsis + +Declared in header `` + +[source,cpp,subs="verbatim,macros,-callouts"] +---- +void +operator<<(xref:F.adoc[F]&); +---- + + + + + + + + +:relfileprefix: ../ +[#F-operator_lshift_eq] + +== xref:F.adoc[pass:[F]]::operator<<= + + + +=== Synopsis + +Declared in header `` + +[source,cpp,subs="verbatim,macros,-callouts"] +---- +void +operator<<=(xref:F.adoc[F]&); +---- + + + + + + + + +:relfileprefix: ../ +[#F-operator_le] + +== xref:F.adoc[pass:[F]]::operator<= + + + +=== Synopsis + +Declared in header `` + +[source,cpp,subs="verbatim,macros,-callouts"] +---- +void +operator<=(xref:F.adoc[F]&); +---- + + + + + + + + +:relfileprefix: ../ +[#F-operator_3way] + +== xref:F.adoc[pass:[F]]::operator<=> + + + +=== Synopsis + +Declared in header `` + +[source,cpp,subs="verbatim,macros,-callouts"] +---- +void +operator<=>(xref:F.adoc[F]&); +---- + + + + + + + + +:relfileprefix: ../ +[#F-operator_gt] + +== xref:F.adoc[pass:[F]]::operator> + + + +=== Synopsis + +Declared in header `` + +[source,cpp,subs="verbatim,macros,-callouts"] +---- +void +operator>(xref:F.adoc[F]&); +---- + + + + + + + + +:relfileprefix: ../ +[#F-operator_rshift] + +== xref:F.adoc[pass:[F]]::operator>> + + + +=== Synopsis + +Declared in header `` + +[source,cpp,subs="verbatim,macros,-callouts"] +---- +void +operator>>(xref:F.adoc[F]&); +---- + + + + + + + + +:relfileprefix: ../ +[#F-operator_rshift_eq] + +== xref:F.adoc[pass:[F]]::operator>>= + + + +=== Synopsis + +Declared in header `` + +[source,cpp,subs="verbatim,macros,-callouts"] +---- +void +operator>>=(xref:F.adoc[F]&); +---- + + + + + + + + +:relfileprefix: ../ +[#F-operator_ge] + +== xref:F.adoc[pass:[F]]::operator>= + + + +=== Synopsis + +Declared in header `` + +[source,cpp,subs="verbatim,macros,-callouts"] +---- +void +operator>=(xref:F.adoc[F]&); +---- + + + + + + + + +:relfileprefix: ../ +[#F-operator_star] + +== xref:F.adoc[pass:[F]]::operator* + + + +=== Synopsis + +Declared in header `` + +[source,cpp,subs="verbatim,macros,-callouts"] +---- +void +operator*(xref:F.adoc[F]&); +---- + + + + + + + + +:relfileprefix: ../ +[#F-operator_star_eq] + +== xref:F.adoc[pass:[F]]::operator*= + + + +=== Synopsis + +Declared in header `` + +[source,cpp,subs="verbatim,macros,-callouts"] +---- +void +operator*=(xref:F.adoc[F]&); +---- + + + + + + + + +:relfileprefix: ../ +[#F-operator_mod] + +== xref:F.adoc[pass:[F]]::operator% + + + +=== Synopsis + +Declared in header `` + +[source,cpp,subs="verbatim,macros,-callouts"] +---- +void +operator%(xref:F.adoc[F]&); +---- + + + + + + + + +:relfileprefix: ../ +[#F-operator_mod_eq] + +== xref:F.adoc[pass:[F]]::operator%= + + + +=== Synopsis + +Declared in header `` + +[source,cpp,subs="verbatim,macros,-callouts"] +---- +void +operator%=(xref:F.adoc[F]&); +---- + + + + + + + + +:relfileprefix: ../ +[#F-operator_slash] + +== xref:F.adoc[pass:[F]]::operator/ + + + +=== Synopsis + +Declared in header `` + +[source,cpp,subs="verbatim,macros,-callouts"] +---- +void +operator/(xref:F.adoc[F]&); +---- + + + + + + + + +:relfileprefix: ../ +[#F-operator_slash_eq] + +== xref:F.adoc[pass:[F]]::operator/= + + + +=== Synopsis + +Declared in header `` + +[source,cpp,subs="verbatim,macros,-callouts"] +---- +void +operator/=(xref:F.adoc[F]&); +---- + + + + + + + + +:relfileprefix: ../ +[#F-operator_xor] + +== xref:F.adoc[pass:[F]]::operator^ + + + +=== Synopsis + +Declared in header `` + +[source,cpp,subs="verbatim,macros,-callouts"] +---- +void +operator^(xref:F.adoc[F]&); +---- + + + + + + + + +:relfileprefix: ../ +[#F-operator_xor_eq] + +== xref:F.adoc[pass:[F]]::operator^= + + + +=== Synopsis + +Declared in header `` + +[source,cpp,subs="verbatim,macros,-callouts"] +---- +void +operator^=(xref:F.adoc[F]&); +---- + + + + + + + + +:relfileprefix: ../ +[#F-operator_assign] + +== xref:F.adoc[pass:[F]]::operator= + + + +=== Synopsis + +Declared in header `` + +[source,cpp,subs="verbatim,macros,-callouts"] +---- +void +operator=(xref:F.adoc[F]&); +---- + + + + + + + + +:relfileprefix: ../ +[#F-operator_eq] + +== xref:F.adoc[pass:[F]]::operator== + + + +=== Synopsis + +Declared in header `` + +[source,cpp,subs="verbatim,macros,-callouts"] +---- +void +operator==(xref:F.adoc[F]&); +---- + + + + + + + + +:relfileprefix: ../ +[#F-operator_not] + +== xref:F.adoc[pass:[F]]::operator! + + + +=== Synopsis + +Declared in header `` + +[source,cpp,subs="verbatim,macros,-callouts"] +---- +void +operator!(); +---- + + + + + + + + +:relfileprefix: ../ +[#F-operator_not_eq] + +== xref:F.adoc[pass:[F]]::operator!= + + + +=== Synopsis + +Declared in header `` + +[source,cpp,subs="verbatim,macros,-callouts"] +---- +void +operator!=(xref:F.adoc[F]&); +---- + + + + + + + + + +[#f6] + +== f6 + + +See +xref:F/operator_bitnot.adoc[F::operator~] + + +=== Synopsis + +Declared in header `` + +[source,cpp,subs="verbatim,macros,-callouts"] +---- +void +f6(); +---- + +=== Description + + +See +xref:F/operator_comma.adoc[F::operator,] + +See +xref:F/operator_call.adoc[F::operator()] + +See +xref:F/operator_subs.adoc[F::operator[]] + +See +xref:F/operator_plus.adoc[F::operator+] + +See +xref:F/operator_inc.adoc[F::operator++] + +See +xref:F/operator_plus_eq.adoc[F::operator+=] + +See +xref:F/operator_bitand.adoc[F::operator&] + +See +xref:F/operator_and.adoc[F::operator&&] + +See +xref:F/operator_and_eq.adoc[F::operator&=] + +See +xref:F/operator_bitor.adoc[F::operator|] + +See +xref:F/operator_or.adoc[F::operator||] + +See +xref:F/operator_or_eq.adoc[F::operator|=] + +See +xref:F/operator_minus.adoc[F::operator-] + +See +xref:F/operator_dec.adoc[F::operator--] + +See +xref:F/operator_minus_eq.adoc[F::operator-=] + +See +xref:F/operator_ptr.adoc[F::operator->] + +See +xref:F/operator_ptrmem.adoc[F::operator->*] + +See +xref:F/operator_lt.adoc[F::operator<] + +See +xref:F/operator_lshift.adoc[F::operator<<] + +See +xref:F/operator_lshift_eq.adoc[F::operator<<=] + +See +xref:F/operator_le.adoc[F::operator<=] + +See +xref:F/operator_3way.adoc[F::operator<=>] + +See +xref:F/operator_gt.adoc[F::operator>] + +See +xref:F/operator_rshift.adoc[F::operator>>] + +See +xref:F/operator_rshift_eq.adoc[F::operator>>=] + +See +xref:F/operator_ge.adoc[F::operator>=] + +See +xref:F/operator_star.adoc[F::operator*] + +See +xref:F/operator_star_eq.adoc[F::operator*=] + +See +xref:F/operator_mod.adoc[F::operator%] + +See +xref:F/operator_mod_eq.adoc[F::operator%=] + +See +xref:F/operator_slash.adoc[F::operator/] + +See +xref:F/operator_slash_eq.adoc[F::operator/=] + +See +xref:F/operator_xor.adoc[F::operator^] + +See +xref:F/operator_xor_eq.adoc[F::operator^=] + +See +xref:F/operator_assign.adoc[F::operator=] + +See +xref:F/operator_eq.adoc[F::operator==] + +See +xref:F/operator_not.adoc[F::operator!] + +See +xref:F/operator_not_eq.adoc[F::operator!=] + + + + + + + + + + +Created with MrDocs diff --git a/test-files/golden-tests/requires-clause.adoc b/test-files/golden-tests/requires-clause.adoc new file mode 100644 index 000000000..764f4e8b8 --- /dev/null +++ b/test-files/golden-tests/requires-clause.adoc @@ -0,0 +1,206 @@ += Reference +:mrdocs: + +[#index] + +== Global namespace + +=== Types +[cols=2,separator=¦] +|=== +¦Name ¦Description +¦xref:A.adoc[`A`] ¦ + +|=== +=== Functions +[cols=2,separator=¦] +|=== +¦Name ¦Description +¦xref:f.adoc[`f`] ¦ +¦xref:g.adoc[`g`] ¦ +|=== + + +[#f] + +== f + + + +=== Synopsis + + +[source,cpp,subs="verbatim,macros,-callouts"] +---- +template +void +xref:f-05.adoc[pass:[f]]() requires (sizeof(T) == 4); +---- + +[source,cpp,subs="verbatim,macros,-callouts"] +---- +template +void +xref:f-08.adoc[pass:[f]]() requires (sizeof(T) == 2); +---- + + + + + + + + + +[#f-05] + +== f + + + +=== Synopsis + +Declared in header `` + +[source,cpp,subs="verbatim,macros,-callouts"] +---- +template +void +f() requires (sizeof(T) == 4); +---- + + + + + + + + + +[#f-08] + +== f + + + +=== Synopsis + +Declared in header `` + +[source,cpp,subs="verbatim,macros,-callouts"] +---- +template +void +f() requires (sizeof(T) == 2); +---- + + + + + + + + + +[#g] + +== g + + + +=== Synopsis + + +[source,cpp,subs="verbatim,macros,-callouts"] +---- +template requires (sizeof(T) == 4) +void +xref:g-0a.adoc[pass:[g]](); +---- + +[source,cpp,subs="verbatim,macros,-callouts"] +---- +template requires (sizeof(U) == 2) +void +xref:g-0c.adoc[pass:[g]](); +---- + + + + + + + + + +[#g-0a] + +== g + + + +=== Synopsis + +Declared in header `` + +[source,cpp,subs="verbatim,macros,-callouts"] +---- +template requires (sizeof(T) == 4) +void +g(); +---- + + + + + + + + + +[#g-0c] + +== g + + + +=== Synopsis + +Declared in header `` + +[source,cpp,subs="verbatim,macros,-callouts"] +---- +template requires (sizeof(U) == 2) +void +g(); +---- + + + + + + + + + +[#A] + +== A + + + +=== Synopsis + +Declared in header `` + +[source,cpp,subs="verbatim,macros,-callouts"] +---- +template requires (sizeof(U) == 2) +struct A; +---- + + + + + +Created with MrDocs diff --git a/test-files/golden-tests/spec-mem-implicit-instantiation.adoc b/test-files/golden-tests/spec-mem-implicit-instantiation.adoc new file mode 100644 index 000000000..42a547ae7 --- /dev/null +++ b/test-files/golden-tests/spec-mem-implicit-instantiation.adoc @@ -0,0 +1,270 @@ += Reference +:mrdocs: + +[#index] + +== Global namespace + +=== Types +[cols=2,separator=¦] +|=== +¦Name ¦Description +¦xref:A-0e.adoc[`A`] ¦ + +¦xref:D.adoc[`D`] ¦ + +|=== + + +[#A-0e] + +== A + + + +=== Synopsis + +Declared in header `` + +[source,cpp,subs="verbatim,macros,-callouts"] +---- +template +struct A; +---- + +=== Types +[cols=2,separator=¦] +|=== +¦Name ¦Description +¦xref:A-0e/B.adoc[`B`] ¦ + +¦xref:A-0e/C.adoc[`C`] ¦ + +|=== +=== Member Functions +[cols=2,separator=¦] +|=== +¦Name ¦Description +¦xref:A-0e/f.adoc[`f`] ¦ + +|=== + + + +:relfileprefix: ../ +[#A-0e-f] + +== xref:A-0e.adoc[pass:[A]]::f + + + +=== Synopsis + +Declared in header `` + +[source,cpp,subs="verbatim,macros,-callouts"] +---- +void +f(); +---- + + + + + + + + +:relfileprefix: ../ +[#A-0e-B] + +== xref:A-0e.adoc[pass:[A]]::B + + + +=== Synopsis + +Declared in header `` + +[source,cpp,subs="verbatim,macros,-callouts"] +---- +template +struct B; +---- + +=== Member Functions +[cols=2,separator=¦] +|=== +¦Name ¦Description +¦xref:A-0e/B/g.adoc[`g`] ¦ + +|=== + + + +:relfileprefix: ../../ +[#A-0e-B-g] + +== xref:A-0e.adoc[pass:[A]]::xref:A-0e/B.adoc[pass:[B]]::g + + + +=== Synopsis + +Declared in header `` + +[source,cpp,subs="verbatim,macros,-callouts"] +---- +void +g(); +---- + + + + + + + + +:relfileprefix: ../ +[#A-0e-C] + +== xref:A-0e.adoc[pass:[A]]::C + + + +=== Synopsis + +Declared in header `` + +[source,cpp,subs="verbatim,macros,-callouts"] +---- +template +struct C; +---- + +=== Member Functions +[cols=2,separator=¦] +|=== +¦Name ¦Description +¦xref:A-0e/C/h.adoc[`h`] ¦ + +|=== + + + +:relfileprefix: ../../ +[#A-0e-C-h] + +== xref:A-0e.adoc[pass:[A]]::xref:A-0e/C.adoc[pass:[C]]::h + + + +=== Synopsis + +Declared in header `` + +[source,cpp,subs="verbatim,macros,-callouts"] +---- +void +h(); +---- + + + + + + + + + +[#A-000] + + +[#A-00b] + + +[#A-0f] + + +[#D] + +== D + + + +=== Synopsis + +Declared in header `` + +[source,cpp,subs="verbatim,macros,-callouts"] +---- +struct D; +---- + +=== Types +[cols=2,separator=¦] +|=== +¦Name ¦Description +¦xref:D/E-0e.adoc[`E`] ¦ + +|=== + + + +:relfileprefix: ../ +[#D-E-0e] + +== xref:D.adoc[pass:[D]]::E + + + +=== Synopsis + +Declared in header `` + +[source,cpp,subs="verbatim,macros,-callouts"] +---- +template +struct E; +---- + +=== Member Functions +[cols=2,separator=¦] +|=== +¦Name ¦Description +¦xref:D/E-0e/k.adoc[`k`] ¦ + +|=== + + + +:relfileprefix: ../../ +[#D-E-0e-k] + +== xref:D.adoc[pass:[D]]::xref:D/E-0e.adoc[pass:[E]]::k + + + +=== Synopsis + +Declared in header `` + +[source,cpp,subs="verbatim,macros,-callouts"] +---- +void +k(); +---- + + + + + + + + +:relfileprefix: ../ +[#D-E-0d] + + +Created with MrDocs diff --git a/test-files/golden-tests/static-data-def-constexpr.adoc b/test-files/golden-tests/static-data-def-constexpr.adoc new file mode 100644 index 000000000..67c500eeb --- /dev/null +++ b/test-files/golden-tests/static-data-def-constexpr.adoc @@ -0,0 +1,109 @@ += Reference +:mrdocs: + +[#index] + +== Global namespace + +=== Types +[cols=2,separator=¦] +|=== +¦Name ¦Description +¦xref:S.adoc[`S`] ¦ + +¦xref:T.adoc[`T`] ¦ + +|=== + + +[#S] + +== S + + + +=== Synopsis + +Declared in header `` + +[source,cpp,subs="verbatim,macros,-callouts"] +---- +struct S; +---- + +=== Static Data Members +[cols=2,separator=¦] +|=== +¦Name ¦Description +¦xref:S/s.adoc[`s`] ¦ + +|=== + + + +:relfileprefix: ../ +[#S-s] + +== xref:S.adoc[pass:[S]]::s + + + +=== Synopsis + +Declared in header `` + +[source,cpp,subs="verbatim,macros,-callouts"] +---- +constexpr +static +xref:S.adoc[S] const s = S{}; +---- + + + +[#T] + +== T + + + +=== Synopsis + +Declared in header `` + +[source,cpp,subs="verbatim,macros,-callouts"] +---- +struct T; +---- + +=== Static Data Members +[cols=2,separator=¦] +|=== +¦Name ¦Description +¦xref:T/t.adoc[`t`] ¦ + +|=== + + + +:relfileprefix: ../ +[#T-t] + +== xref:T.adoc[pass:[T]]::t + + + +=== Synopsis + +Declared in header `` + +[source,cpp,subs="verbatim,macros,-callouts"] +---- +constexpr +static +int const t = 0; +---- + + + +Created with MrDocs diff --git a/test-files/golden-tests/static-data-def.adoc b/test-files/golden-tests/static-data-def.adoc new file mode 100644 index 000000000..a55a92657 --- /dev/null +++ b/test-files/golden-tests/static-data-def.adoc @@ -0,0 +1,304 @@ += Reference +:mrdocs: + +[#index] + +== Global namespace + +=== Types +[cols=2,separator=¦] +|=== +¦Name ¦Description +¦xref:A.adoc[`A`] ¦ + +¦xref:B.adoc[`B`] ¦ + +|=== +=== Functions +[cols=2,separator=¦] +|=== +¦Name ¦Description +¦xref:f.adoc[`f`] ¦ + +|=== + + +[#A] + +== A + + + +=== Synopsis + +Declared in header `` + +[source,cpp,subs="verbatim,macros,-callouts"] +---- +template +struct A; +---- + +=== Static Data Members +[cols=2,separator=¦] +|=== +¦Name ¦Description +¦xref:A/v0.adoc[`v0`] ¦ + +¦xref:A/v1.adoc[`v1`] ¦ + +¦xref:A/v2.adoc[`v2`] ¦ + +¦xref:A/v3.adoc[`v3`] ¦ + +¦xref:A/v4.adoc[`v4`] ¦ + +¦xref:A/v5.adoc[`v5`] ¦ + +¦xref:A/v6.adoc[`v6`] ¦ + +¦xref:A/v7.adoc[`v7`] ¦ + +|=== + + + +:relfileprefix: ../ +[#A-v0] + +== xref:A.adoc[pass:[A]]::v0 + + + +=== Synopsis + +Declared in header `` + +[source,cpp,subs="verbatim,macros,-callouts"] +---- +static +int v0 = 0; +---- + + +:relfileprefix: ../ +[#A-v1] + +== xref:A.adoc[pass:[A]]::v1 + + + +=== Synopsis + +Declared in header `` + +[source,cpp,subs="verbatim,macros,-callouts"] +---- +static +int v1 = 1; +---- + + +:relfileprefix: ../ +[#A-v2] + +== xref:A.adoc[pass:[A]]::v2 + + + +=== Synopsis + +Declared in header `` + +[source,cpp,subs="verbatim,macros,-callouts"] +---- +constexpr +static +int const v2 = 2; +---- + + +:relfileprefix: ../ +[#A-v3] + +== xref:A.adoc[pass:[A]]::v3 + + + +=== Synopsis + +Declared in header `` + +[source,cpp,subs="verbatim,macros,-callouts"] +---- +static +int const v3 = 3; +---- + + +:relfileprefix: ../ +[#A-v4] + +== xref:A.adoc[pass:[A]]::v4 + + + +=== Synopsis + +Declared in header `` + +[source,cpp,subs="verbatim,macros,-callouts"] +---- +static +int const v4 = 4; +---- + + +:relfileprefix: ../ +[#A-v5] + +== xref:A.adoc[pass:[A]]::v5 + + + +=== Synopsis + +Declared in header `` + +[source,cpp,subs="verbatim,macros,-callouts"] +---- +static +int v5 = 5; +---- + + +:relfileprefix: ../ +[#A-v6] + +== xref:A.adoc[pass:[A]]::v6 + + + +=== Synopsis + +Declared in header `` + +[source,cpp,subs="verbatim,macros,-callouts"] +---- +static +int const v6 = 6; +---- + + +:relfileprefix: ../ +[#A-v7] + +== xref:A.adoc[pass:[A]]::v7 + + + +=== Synopsis + +Declared in header `` + +[source,cpp,subs="verbatim,macros,-callouts"] +---- +constexpr +static +int const v7 = 7; +---- + + + +[#B] + +== B + + + +=== Synopsis + +Declared in header `` + +[source,cpp,subs="verbatim,macros,-callouts"] +---- +struct B; +---- + +=== Static Data Members +[cols=2,separator=¦] +|=== +¦Name ¦Description +¦xref:B/x0.adoc[`x0`] ¦ + +¦xref:B/x1.adoc[`x1`] ¦ + +|=== + + + +:relfileprefix: ../ +[#B-x0] + +== xref:B.adoc[pass:[B]]::x0 + + + +=== Synopsis + +Declared in header `` + +[source,cpp,subs="verbatim,macros,-callouts"] +---- +static +thread_local +int const x0 = 0; +---- + + +:relfileprefix: ../ +[#B-x1] + +== xref:B.adoc[pass:[B]]::x1 + + + +=== Synopsis + +Declared in header `` + +[source,cpp,subs="verbatim,macros,-callouts"] +---- +constexpr +static +thread_local +int const x1 = 0; +---- + + + +[#f] + +== f + + + +=== Synopsis + +Declared in header `` + +[source,cpp,subs="verbatim,macros,-callouts"] +---- +auto +f(); +---- + + + + + + + + + +Created with MrDocs diff --git a/test-files/golden-tests/static-data-template.adoc b/test-files/golden-tests/static-data-template.adoc new file mode 100644 index 000000000..e73b2eba0 --- /dev/null +++ b/test-files/golden-tests/static-data-template.adoc @@ -0,0 +1,110 @@ += Reference +:mrdocs: + +[#index] + +== Global namespace + +=== Types +[cols=2,separator=¦] +|=== +¦Name ¦Description +¦xref:A.adoc[`A`] ¦ + +|=== + + +[#A] + +== A + + + +=== Synopsis + +Declared in header `` + +[source,cpp,subs="verbatim,macros,-callouts"] +---- +template +struct A; +---- + +=== Static Data Members +[cols=2,separator=¦] +|=== +¦Name ¦Description +¦xref:A/x-0e.adoc[`x`] ¦ + +¦xref:A/x-0a.adoc[`x`] ¦ + +¦xref:A/x-07.adoc[`x`] ¦ + +|=== + + + +:relfileprefix: ../ +[#A-x-0e] + +== xref:A.adoc[pass:[A]]::x + + + +=== Synopsis + +Declared in header `` + +[source,cpp,subs="verbatim,macros,-callouts"] +---- +template< + typename U, + typename V> +constexpr +static +T const x = 0; +---- + + +:relfileprefix: ../ +[#A-x-0a] + +== xref:A.adoc[pass:[A]]::x + + + +=== Synopsis + +Declared in header `` + +[source,cpp,subs="verbatim,macros,-callouts"] +---- +template +constexpr +static +T const xref:A/x-0e.adoc[pass:[x]] = 1; +---- + + +:relfileprefix: ../ +[#A-x-07] + +== xref:A.adoc[pass:[A]]::x + + + +=== Synopsis + +Declared in header `` + +[source,cpp,subs="verbatim,macros,-callouts"] +---- +template<> +constexpr +static +bool const xref:A/x-0e.adoc[pass:[x]] = 2; +---- + + + +Created with MrDocs diff --git a/test-files/golden-tests/temp/c_mct_expl_inline.adoc b/test-files/golden-tests/temp/c_mct_expl_inline.adoc new file mode 100644 index 000000000..2444b86a9 --- /dev/null +++ b/test-files/golden-tests/temp/c_mct_expl_inline.adoc @@ -0,0 +1,147 @@ += Reference +:mrdocs: + +[#index] + +== Global namespace + +=== Types +[cols=2,separator=¦] +|=== +¦Name ¦Description +¦xref:A.adoc[`A`] ¦ + +|=== + + +[#A] + +== A + + + +=== Synopsis + +Declared in header `` + +[source,cpp,subs="verbatim,macros,-callouts"] +---- +struct A; +---- + +=== Types +[cols=2,separator=¦] +|=== +¦Name ¦Description +¦xref:A/B-04.adoc[`B`] ¦ + +¦xref:A/B-01.adoc[`B`] ¦ + +|=== + + + +:relfileprefix: ../ +[#A-B-04] + +== xref:A.adoc[pass:[A]]::B + + + +=== Synopsis + +Declared in header `` + +[source,cpp,subs="verbatim,macros,-callouts"] +---- +template +struct B; +---- + +=== Member Functions +[cols=2,separator=¦] +|=== +¦Name ¦Description +¦xref:A/B-04/f.adoc[`f`] ¦ + +|=== + + + +:relfileprefix: ../../ +[#A-B-04-f] + +== xref:A.adoc[pass:[A]]::xref:A/B-04.adoc[pass:[B]]::f + + + +=== Synopsis + +Declared in header `` + +[source,cpp,subs="verbatim,macros,-callouts"] +---- +void +f(); +---- + + + + + + + + +:relfileprefix: ../ +[#A-B-01] + +== xref:A.adoc[pass:[A]]::B + + + +=== Synopsis + +Declared in header `` + +[source,cpp,subs="verbatim,macros,-callouts"] +---- +template<> +struct xref:A/B-04.adoc[pass:[B]]; +---- + +=== Member Functions +[cols=2,separator=¦] +|=== +¦Name ¦Description +¦xref:A/B-01/g.adoc[`g`] ¦ + +|=== + + + +:relfileprefix: ../../ +[#A-B-01-g] + +== xref:A.adoc[pass:[A]]::xref:A/B-01.adoc[pass:[B]]::g + + + +=== Synopsis + +Declared in header `` + +[source,cpp,subs="verbatim,macros,-callouts"] +---- +void +g(); +---- + + + + + + + + + +Created with MrDocs diff --git a/test-files/golden-tests/temp/c_mct_expl_outside.adoc b/test-files/golden-tests/temp/c_mct_expl_outside.adoc new file mode 100644 index 000000000..dc17ea6cf --- /dev/null +++ b/test-files/golden-tests/temp/c_mct_expl_outside.adoc @@ -0,0 +1,147 @@ += Reference +:mrdocs: + +[#index] + +== Global namespace + +=== Types +[cols=2,separator=¦] +|=== +¦Name ¦Description +¦xref:A.adoc[`A`] ¦ + +|=== + + +[#A] + +== A + + + +=== Synopsis + +Declared in header `` + +[source,cpp,subs="verbatim,macros,-callouts"] +---- +struct A; +---- + +=== Types +[cols=2,separator=¦] +|=== +¦Name ¦Description +¦xref:A/B-04.adoc[`B`] ¦ + +¦xref:A/B-01.adoc[`B`] ¦ + +|=== + + + +:relfileprefix: ../ +[#A-B-04] + +== xref:A.adoc[pass:[A]]::B + + + +=== Synopsis + +Declared in header `` + +[source,cpp,subs="verbatim,macros,-callouts"] +---- +template +struct B; +---- + +=== Member Functions +[cols=2,separator=¦] +|=== +¦Name ¦Description +¦xref:A/B-04/f.adoc[`f`] ¦ + +|=== + + + +:relfileprefix: ../../ +[#A-B-04-f] + +== xref:A.adoc[pass:[A]]::xref:A/B-04.adoc[pass:[B]]::f + + + +=== Synopsis + +Declared in header `` + +[source,cpp,subs="verbatim,macros,-callouts"] +---- +void +f(); +---- + + + + + + + + +:relfileprefix: ../ +[#A-B-01] + +== xref:A.adoc[pass:[A]]::B + + + +=== Synopsis + +Declared in header `` + +[source,cpp,subs="verbatim,macros,-callouts"] +---- +template<> +struct xref:A/B-04.adoc[pass:[B]]; +---- + +=== Member Functions +[cols=2,separator=¦] +|=== +¦Name ¦Description +¦xref:A/B-01/g.adoc[`g`] ¦ + +|=== + + + +:relfileprefix: ../../ +[#A-B-01-g] + +== xref:A.adoc[pass:[A]]::xref:A/B-01.adoc[pass:[B]]::g + + + +=== Synopsis + +Declared in header `` + +[source,cpp,subs="verbatim,macros,-callouts"] +---- +void +g(); +---- + + + + + + + + + +Created with MrDocs diff --git a/test-files/golden-tests/temp/c_mft_expl_inline.adoc b/test-files/golden-tests/temp/c_mft_expl_inline.adoc new file mode 100644 index 000000000..d4f16fb16 --- /dev/null +++ b/test-files/golden-tests/temp/c_mft_expl_inline.adoc @@ -0,0 +1,123 @@ += Reference +:mrdocs: + +[#index] + +== Global namespace + +=== Types +[cols=2,separator=¦] +|=== +¦Name ¦Description +¦xref:A.adoc[`A`] ¦ + +|=== + + +[#A] + +== A + + + +=== Synopsis + +Declared in header `` + +[source,cpp,subs="verbatim,macros,-callouts"] +---- +struct A; +---- + +=== Member Functions +[cols=2,separator=¦] +|=== +¦Name ¦Description +¦xref:A/f.adoc[`f`] ¦ +|=== + + + +:relfileprefix: ../ +[#A-f] + +== xref:A.adoc[pass:[A]]::f + + + +=== Synopsis + + +[source,cpp,subs="verbatim,macros,-callouts"] +---- +template +void +xref:A/f-0e.adoc[pass:[f]](); +---- + +[source,cpp,subs="verbatim,macros,-callouts"] +---- +template<> +void +xref:A/f-0b.adoc[pass:[f]](); +---- + + + + + + + + +:relfileprefix: ../ +[#A-f-0e] + +== xref:A.adoc[pass:[A]]::f + + + +=== Synopsis + +Declared in header `` + +[source,cpp,subs="verbatim,macros,-callouts"] +---- +template +void +f(); +---- + + + + + + + + +:relfileprefix: ../ +[#A-f-0b] + +== xref:A.adoc[pass:[A]]::f + + + +=== Synopsis + +Declared in header `` + +[source,cpp,subs="verbatim,macros,-callouts"] +---- +template<> +void +xref:A/f-0e.adoc[pass:[f]](); +---- + + + + + + + + + +Created with MrDocs diff --git a/test-files/golden-tests/temp/c_mft_expl_outside.adoc b/test-files/golden-tests/temp/c_mft_expl_outside.adoc new file mode 100644 index 000000000..13cf5d890 --- /dev/null +++ b/test-files/golden-tests/temp/c_mft_expl_outside.adoc @@ -0,0 +1,123 @@ += Reference +:mrdocs: + +[#index] + +== Global namespace + +=== Types +[cols=2,separator=¦] +|=== +¦Name ¦Description +¦xref:A.adoc[`A`] ¦ + +|=== + + +[#A] + +== A + + + +=== Synopsis + +Declared in header `` + +[source,cpp,subs="verbatim,macros,-callouts"] +---- +struct A; +---- + +=== Member Functions +[cols=2,separator=¦] +|=== +¦Name ¦Description +¦xref:A/f.adoc[`f`] ¦ +|=== + + + +:relfileprefix: ../ +[#A-f] + +== xref:A.adoc[pass:[A]]::f + + + +=== Synopsis + + +[source,cpp,subs="verbatim,macros,-callouts"] +---- +template +void +xref:A/f-0e.adoc[pass:[f]](); +---- + +[source,cpp,subs="verbatim,macros,-callouts"] +---- +template<> +void +xref:A/f-0b.adoc[pass:[f]](); +---- + + + + + + + + +:relfileprefix: ../ +[#A-f-0e] + +== xref:A.adoc[pass:[A]]::f + + + +=== Synopsis + +Declared in header `` + +[source,cpp,subs="verbatim,macros,-callouts"] +---- +template +void +f(); +---- + + + + + + + + +:relfileprefix: ../ +[#A-f-0b] + +== xref:A.adoc[pass:[A]]::f + + + +=== Synopsis + +Declared in header `` + +[source,cpp,subs="verbatim,macros,-callouts"] +---- +template<> +void +xref:A/f-0e.adoc[pass:[f]](); +---- + + + + + + + + + +Created with MrDocs diff --git a/test-files/golden-tests/temp/ct_expl.adoc b/test-files/golden-tests/temp/ct_expl.adoc new file mode 100644 index 000000000..1be05e01c --- /dev/null +++ b/test-files/golden-tests/temp/ct_expl.adoc @@ -0,0 +1,121 @@ += Reference +:mrdocs: + +[#index] + +== Global namespace + +=== Types +[cols=2,separator=¦] +|=== +¦Name ¦Description +¦xref:A-0e.adoc[`A`] ¦ + +¦xref:A-00.adoc[`A`] ¦ + +|=== + + +[#A-0e] + +== A + + + +=== Synopsis + +Declared in header `` + +[source,cpp,subs="verbatim,macros,-callouts"] +---- +template +struct A; +---- + +=== Member Functions +[cols=2,separator=¦] +|=== +¦Name ¦Description +¦xref:A-0e/f.adoc[`f`] ¦ + +|=== + + + +:relfileprefix: ../ +[#A-0e-f] + +== xref:A-0e.adoc[pass:[A]]::f + + + +=== Synopsis + +Declared in header `` + +[source,cpp,subs="verbatim,macros,-callouts"] +---- +void +f(); +---- + + + + + + + + + +[#A-00] + +== A + + + +=== Synopsis + +Declared in header `` + +[source,cpp,subs="verbatim,macros,-callouts"] +---- +template<> +struct xref:A-0e.adoc[pass:[A]]; +---- + +=== Member Functions +[cols=2,separator=¦] +|=== +¦Name ¦Description +¦xref:A-00/g.adoc[`g`] ¦ + +|=== + + + +:relfileprefix: ../ +[#A-00-g] + +== xref:A-00.adoc[pass:[A]]::g + + + +=== Synopsis + +Declared in header `` + +[source,cpp,subs="verbatim,macros,-callouts"] +---- +void +g(); +---- + + + + + + + + + +Created with MrDocs diff --git a/test-files/golden-tests/temp/ct_mc.adoc b/test-files/golden-tests/temp/ct_mc.adoc new file mode 100644 index 000000000..47400beef --- /dev/null +++ b/test-files/golden-tests/temp/ct_mc.adoc @@ -0,0 +1,94 @@ += Reference +:mrdocs: + +[#index] + +== Global namespace + +=== Types +[cols=2,separator=¦] +|=== +¦Name ¦Description +¦xref:A.adoc[`A`] ¦ + +|=== + + +[#A] + +== A + + + +=== Synopsis + +Declared in header `` + +[source,cpp,subs="verbatim,macros,-callouts"] +---- +template +struct A; +---- + +=== Types +[cols=2,separator=¦] +|=== +¦Name ¦Description +¦xref:A/B.adoc[`B`] ¦ + +|=== + + + +:relfileprefix: ../ +[#A-B] + +== xref:A.adoc[pass:[A]]::B + + + +=== Synopsis + +Declared in header `` + +[source,cpp,subs="verbatim,macros,-callouts"] +---- +struct B; +---- + +=== Member Functions +[cols=2,separator=¦] +|=== +¦Name ¦Description +¦xref:A/B/f.adoc[`f`] ¦ + +|=== + + + +:relfileprefix: ../../ +[#A-B-f] + +== xref:A.adoc[pass:[A]]::xref:A/B.adoc[pass:[B]]::f + + + +=== Synopsis + +Declared in header `` + +[source,cpp,subs="verbatim,macros,-callouts"] +---- +void +f(); +---- + + + + + + + + + +Created with MrDocs diff --git a/test-files/golden-tests/temp/ct_mc_expl_outside.adoc b/test-files/golden-tests/temp/ct_mc_expl_outside.adoc new file mode 100644 index 000000000..ec0ac4688 --- /dev/null +++ b/test-files/golden-tests/temp/ct_mc_expl_outside.adoc @@ -0,0 +1,97 @@ += Reference +:mrdocs: + +[#index] + +== Global namespace + +=== Types +[cols=2,separator=¦] +|=== +¦Name ¦Description +¦xref:A-0e.adoc[`A`] ¦ + +|=== + + +[#A-0e] + +== A + + + +=== Synopsis + +Declared in header `` + +[source,cpp,subs="verbatim,macros,-callouts"] +---- +template +struct A; +---- + +=== Types +[cols=2,separator=¦] +|=== +¦Name ¦Description +¦xref:A-0e/B.adoc[`B`] ¦ + +|=== + + + +:relfileprefix: ../ +[#A-0e-B] + +== xref:A-0e.adoc[pass:[A]]::B + + + +=== Synopsis + +Declared in header `` + +[source,cpp,subs="verbatim,macros,-callouts"] +---- +struct B; +---- + +=== Member Functions +[cols=2,separator=¦] +|=== +¦Name ¦Description +¦xref:A-0e/B/f.adoc[`f`] ¦ + +|=== + + + +:relfileprefix: ../../ +[#A-0e-B-f] + +== xref:A-0e.adoc[pass:[A]]::xref:A-0e/B.adoc[pass:[B]]::f + + + +=== Synopsis + +Declared in header `` + +[source,cpp,subs="verbatim,macros,-callouts"] +---- +void +f(); +---- + + + + + + + + + +[#A-00] + + +Created with MrDocs diff --git a/test-files/golden-tests/temp/ct_mct.adoc b/test-files/golden-tests/temp/ct_mct.adoc new file mode 100644 index 000000000..ea4f39fc2 --- /dev/null +++ b/test-files/golden-tests/temp/ct_mct.adoc @@ -0,0 +1,95 @@ += Reference +:mrdocs: + +[#index] + +== Global namespace + +=== Types +[cols=2,separator=¦] +|=== +¦Name ¦Description +¦xref:A.adoc[`A`] ¦ + +|=== + + +[#A] + +== A + + + +=== Synopsis + +Declared in header `` + +[source,cpp,subs="verbatim,macros,-callouts"] +---- +template +struct A; +---- + +=== Types +[cols=2,separator=¦] +|=== +¦Name ¦Description +¦xref:A/B.adoc[`B`] ¦ + +|=== + + + +:relfileprefix: ../ +[#A-B] + +== xref:A.adoc[pass:[A]]::B + + + +=== Synopsis + +Declared in header `` + +[source,cpp,subs="verbatim,macros,-callouts"] +---- +template +struct B; +---- + +=== Member Functions +[cols=2,separator=¦] +|=== +¦Name ¦Description +¦xref:A/B/f.adoc[`f`] ¦ + +|=== + + + +:relfileprefix: ../../ +[#A-B-f] + +== xref:A.adoc[pass:[A]]::xref:A/B.adoc[pass:[B]]::f + + + +=== Synopsis + +Declared in header `` + +[source,cpp,subs="verbatim,macros,-callouts"] +---- +void +f(); +---- + + + + + + + + + +Created with MrDocs diff --git a/test-files/golden-tests/temp/ct_mct_expl_inline.adoc b/test-files/golden-tests/temp/ct_mct_expl_inline.adoc new file mode 100644 index 000000000..511b14249 --- /dev/null +++ b/test-files/golden-tests/temp/ct_mct_expl_inline.adoc @@ -0,0 +1,148 @@ += Reference +:mrdocs: + +[#index] + +== Global namespace + +=== Types +[cols=2,separator=¦] +|=== +¦Name ¦Description +¦xref:A.adoc[`A`] ¦ + +|=== + + +[#A] + +== A + + + +=== Synopsis + +Declared in header `` + +[source,cpp,subs="verbatim,macros,-callouts"] +---- +template +struct A; +---- + +=== Types +[cols=2,separator=¦] +|=== +¦Name ¦Description +¦xref:A/B-07.adoc[`B`] ¦ + +¦xref:A/B-06.adoc[`B`] ¦ + +|=== + + + +:relfileprefix: ../ +[#A-B-07] + +== xref:A.adoc[pass:[A]]::B + + + +=== Synopsis + +Declared in header `` + +[source,cpp,subs="verbatim,macros,-callouts"] +---- +template +struct B; +---- + +=== Member Functions +[cols=2,separator=¦] +|=== +¦Name ¦Description +¦xref:A/B-07/f.adoc[`f`] ¦ + +|=== + + + +:relfileprefix: ../../ +[#A-B-07-f] + +== xref:A.adoc[pass:[A]]::xref:A/B-07.adoc[pass:[B]]::f + + + +=== Synopsis + +Declared in header `` + +[source,cpp,subs="verbatim,macros,-callouts"] +---- +void +f(); +---- + + + + + + + + +:relfileprefix: ../ +[#A-B-06] + +== xref:A.adoc[pass:[A]]::B + + + +=== Synopsis + +Declared in header `` + +[source,cpp,subs="verbatim,macros,-callouts"] +---- +template<> +struct xref:A/B-07.adoc[pass:[B]]; +---- + +=== Member Functions +[cols=2,separator=¦] +|=== +¦Name ¦Description +¦xref:A/B-06/g.adoc[`g`] ¦ + +|=== + + + +:relfileprefix: ../../ +[#A-B-06-g] + +== xref:A.adoc[pass:[A]]::xref:A/B-06.adoc[pass:[B]]::g + + + +=== Synopsis + +Declared in header `` + +[source,cpp,subs="verbatim,macros,-callouts"] +---- +void +g(); +---- + + + + + + + + + +Created with MrDocs diff --git a/test-files/golden-tests/temp/ct_mct_expl_outside.adoc b/test-files/golden-tests/temp/ct_mct_expl_outside.adoc new file mode 100644 index 000000000..daf0ad343 --- /dev/null +++ b/test-files/golden-tests/temp/ct_mct_expl_outside.adoc @@ -0,0 +1,98 @@ += Reference +:mrdocs: + +[#index] + +== Global namespace + +=== Types +[cols=2,separator=¦] +|=== +¦Name ¦Description +¦xref:A-0e.adoc[`A`] ¦ + +|=== + + +[#A-0e] + +== A + + + +=== Synopsis + +Declared in header `` + +[source,cpp,subs="verbatim,macros,-callouts"] +---- +template +struct A; +---- + +=== Types +[cols=2,separator=¦] +|=== +¦Name ¦Description +¦xref:A-0e/B.adoc[`B`] ¦ + +|=== + + + +:relfileprefix: ../ +[#A-0e-B] + +== xref:A-0e.adoc[pass:[A]]::B + + + +=== Synopsis + +Declared in header `` + +[source,cpp,subs="verbatim,macros,-callouts"] +---- +template +struct B; +---- + +=== Member Functions +[cols=2,separator=¦] +|=== +¦Name ¦Description +¦xref:A-0e/B/f.adoc[`f`] ¦ + +|=== + + + +:relfileprefix: ../../ +[#A-0e-B-f] + +== xref:A-0e.adoc[pass:[A]]::xref:A-0e/B.adoc[pass:[B]]::f + + + +=== Synopsis + +Declared in header `` + +[source,cpp,subs="verbatim,macros,-callouts"] +---- +void +f(); +---- + + + + + + + + + +[#A-00] + + +Created with MrDocs diff --git a/test-files/golden-tests/temp/ct_mf.adoc b/test-files/golden-tests/temp/ct_mf.adoc new file mode 100644 index 000000000..d30027a1d --- /dev/null +++ b/test-files/golden-tests/temp/ct_mf.adoc @@ -0,0 +1,68 @@ += Reference +:mrdocs: + +[#index] + +== Global namespace + +=== Types +[cols=2,separator=¦] +|=== +¦Name ¦Description +¦xref:A.adoc[`A`] ¦ + +|=== + + +[#A] + +== A + + + +=== Synopsis + +Declared in header `` + +[source,cpp,subs="verbatim,macros,-callouts"] +---- +template +struct A; +---- + +=== Member Functions +[cols=2,separator=¦] +|=== +¦Name ¦Description +¦xref:A/f.adoc[`f`] ¦ + +|=== + + + +:relfileprefix: ../ +[#A-f] + +== xref:A.adoc[pass:[A]]::f + + + +=== Synopsis + +Declared in header `` + +[source,cpp,subs="verbatim,macros,-callouts"] +---- +void +f(); +---- + + + + + + + + + +Created with MrDocs diff --git a/test-files/golden-tests/temp/ct_mf_expl_outside.adoc b/test-files/golden-tests/temp/ct_mf_expl_outside.adoc new file mode 100644 index 000000000..87909ba85 --- /dev/null +++ b/test-files/golden-tests/temp/ct_mf_expl_outside.adoc @@ -0,0 +1,71 @@ += Reference +:mrdocs: + +[#index] + +== Global namespace + +=== Types +[cols=2,separator=¦] +|=== +¦Name ¦Description +¦xref:A-0e.adoc[`A`] ¦ + +|=== + + +[#A-0e] + +== A + + + +=== Synopsis + +Declared in header `` + +[source,cpp,subs="verbatim,macros,-callouts"] +---- +template +struct A; +---- + +=== Member Functions +[cols=2,separator=¦] +|=== +¦Name ¦Description +¦xref:A-0e/f.adoc[`f`] ¦ + +|=== + + + +:relfileprefix: ../ +[#A-0e-f] + +== xref:A-0e.adoc[pass:[A]]::f + + + +=== Synopsis + +Declared in header `` + +[source,cpp,subs="verbatim,macros,-callouts"] +---- +void +f(); +---- + + + + + + + + + +[#A-00] + + +Created with MrDocs diff --git a/test-files/golden-tests/temp/ct_mft.adoc b/test-files/golden-tests/temp/ct_mft.adoc new file mode 100644 index 000000000..3ea22b5df --- /dev/null +++ b/test-files/golden-tests/temp/ct_mft.adoc @@ -0,0 +1,69 @@ += Reference +:mrdocs: + +[#index] + +== Global namespace + +=== Types +[cols=2,separator=¦] +|=== +¦Name ¦Description +¦xref:A.adoc[`A`] ¦ + +|=== + + +[#A] + +== A + + + +=== Synopsis + +Declared in header `` + +[source,cpp,subs="verbatim,macros,-callouts"] +---- +template +struct A; +---- + +=== Member Functions +[cols=2,separator=¦] +|=== +¦Name ¦Description +¦xref:A/f.adoc[`f`] ¦ + +|=== + + + +:relfileprefix: ../ +[#A-f] + +== xref:A.adoc[pass:[A]]::f + + + +=== Synopsis + +Declared in header `` + +[source,cpp,subs="verbatim,macros,-callouts"] +---- +template +void +f(); +---- + + + + + + + + + +Created with MrDocs diff --git a/test-files/golden-tests/temp/ct_mft_expl_inline.adoc b/test-files/golden-tests/temp/ct_mft_expl_inline.adoc new file mode 100644 index 000000000..89c14bb30 --- /dev/null +++ b/test-files/golden-tests/temp/ct_mft_expl_inline.adoc @@ -0,0 +1,124 @@ += Reference +:mrdocs: + +[#index] + +== Global namespace + +=== Types +[cols=2,separator=¦] +|=== +¦Name ¦Description +¦xref:A.adoc[`A`] ¦ + +|=== + + +[#A] + +== A + + + +=== Synopsis + +Declared in header `` + +[source,cpp,subs="verbatim,macros,-callouts"] +---- +template +struct A; +---- + +=== Member Functions +[cols=2,separator=¦] +|=== +¦Name ¦Description +¦xref:A/f.adoc[`f`] ¦ +|=== + + + +:relfileprefix: ../ +[#A-f] + +== xref:A.adoc[pass:[A]]::f + + + +=== Synopsis + + +[source,cpp,subs="verbatim,macros,-callouts"] +---- +template +void +xref:A/f-07.adoc[pass:[f]](); +---- + +[source,cpp,subs="verbatim,macros,-callouts"] +---- +template<> +void +xref:A/f-04.adoc[pass:[f]](); +---- + + + + + + + + +:relfileprefix: ../ +[#A-f-07] + +== xref:A.adoc[pass:[A]]::f + + + +=== Synopsis + +Declared in header `` + +[source,cpp,subs="verbatim,macros,-callouts"] +---- +template +void +f(); +---- + + + + + + + + +:relfileprefix: ../ +[#A-f-04] + +== xref:A.adoc[pass:[A]]::f + + + +=== Synopsis + +Declared in header `` + +[source,cpp,subs="verbatim,macros,-callouts"] +---- +template<> +void +xref:A/f-07.adoc[pass:[f]](); +---- + + + + + + + + + +Created with MrDocs diff --git a/test-files/golden-tests/temp/ct_mft_expl_outside.adoc b/test-files/golden-tests/temp/ct_mft_expl_outside.adoc new file mode 100644 index 000000000..d6703619b --- /dev/null +++ b/test-files/golden-tests/temp/ct_mft_expl_outside.adoc @@ -0,0 +1,72 @@ += Reference +:mrdocs: + +[#index] + +== Global namespace + +=== Types +[cols=2,separator=¦] +|=== +¦Name ¦Description +¦xref:A-0e.adoc[`A`] ¦ + +|=== + + +[#A-0e] + +== A + + + +=== Synopsis + +Declared in header `` + +[source,cpp,subs="verbatim,macros,-callouts"] +---- +template +struct A; +---- + +=== Member Functions +[cols=2,separator=¦] +|=== +¦Name ¦Description +¦xref:A-0e/f.adoc[`f`] ¦ + +|=== + + + +:relfileprefix: ../ +[#A-0e-f] + +== xref:A-0e.adoc[pass:[A]]::f + + + +=== Synopsis + +Declared in header `` + +[source,cpp,subs="verbatim,macros,-callouts"] +---- +template +void +f(); +---- + + + + + + + + + +[#A-00] + + +Created with MrDocs diff --git a/test-files/golden-tests/temp/ft_expl.adoc b/test-files/golden-tests/temp/ft_expl.adoc new file mode 100644 index 000000000..72225b665 --- /dev/null +++ b/test-files/golden-tests/temp/ft_expl.adoc @@ -0,0 +1,97 @@ += Reference +:mrdocs: + +[#index] + +== Global namespace + +=== Functions +[cols=2,separator=¦] +|=== +¦Name ¦Description +¦xref:f.adoc[`f`] ¦ +|=== + + +[#f] + +== f + + + +=== Synopsis + + +[source,cpp,subs="verbatim,macros,-callouts"] +---- +template +void +xref:f-03.adoc[pass:[f]](); +---- + +[source,cpp,subs="verbatim,macros,-callouts"] +---- +template<> +void +xref:f-0c.adoc[pass:[f]](); +---- + + + + + + + + + +[#f-03] + +== f + + + +=== Synopsis + +Declared in header `` + +[source,cpp,subs="verbatim,macros,-callouts"] +---- +template +void +f(); +---- + + + + + + + + + +[#f-0c] + +== f + + + +=== Synopsis + +Declared in header `` + +[source,cpp,subs="verbatim,macros,-callouts"] +---- +template<> +void +xref:f-03.adoc[pass:[f]](); +---- + + + + + + + + + +Created with MrDocs diff --git a/test-files/golden-tests/type-resolution.adoc b/test-files/golden-tests/type-resolution.adoc new file mode 100644 index 000000000..c9c9a538f --- /dev/null +++ b/test-files/golden-tests/type-resolution.adoc @@ -0,0 +1,1293 @@ += Reference +:mrdocs: + +[#index] + +== Global namespace + +=== Types +[cols=2,separator=¦] +|=== +¦Name ¦Description +¦xref:A.adoc[`A`] ¦ + +¦xref:B.adoc[`B`] ¦ + +¦xref:C.adoc[`C`] ¦ + +¦xref:D.adoc[`D`] ¦ + +¦xref:E.adoc[`E`] ¦ + +|=== +=== Functions +[cols=2,separator=¦] +|=== +¦Name ¦Description +¦xref:f0.adoc[`f0`] ¦ + +¦xref:f1.adoc[`f1`] ¦ + +¦xref:f2.adoc[`f2`] ¦ + +¦xref:f3.adoc[`f3`] ¦ + +¦xref:f4.adoc[`f4`] ¦ + +¦xref:f5.adoc[`f5`] ¦ + +¦xref:f6.adoc[`f6`] ¦ + +¦xref:f7.adoc[`f7`] ¦ + +¦xref:f8.adoc[`f8`] ¦ + +¦xref:g0.adoc[`g0`] ¦ + +¦xref:g1.adoc[`g1`] ¦ + +¦xref:g2.adoc[`g2`] ¦ + +¦xref:g3.adoc[`g3`] ¦ + +¦xref:g4.adoc[`g4`] ¦ + +¦xref:g5.adoc[`g5`] ¦ + +¦xref:g6.adoc[`g6`] ¦ + +¦xref:g7.adoc[`g7`] ¦ + +¦xref:g8.adoc[`g8`] ¦ + +¦xref:h0.adoc[`h0`] ¦ + +¦xref:h1.adoc[`h1`] ¦ + +¦xref:h2.adoc[`h2`] ¦ + +¦xref:h3.adoc[`h3`] ¦ + +¦xref:h4.adoc[`h4`] ¦ + +¦xref:h5.adoc[`h5`] ¦ + +¦xref:h6.adoc[`h6`] ¦ + +¦xref:h7.adoc[`h7`] ¦ + +¦xref:h8.adoc[`h8`] ¦ + +¦xref:i0.adoc[`i0`] ¦ + +¦xref:i1.adoc[`i1`] ¦ + +¦xref:i2.adoc[`i2`] ¦ + +¦xref:i3.adoc[`i3`] ¦ + +¦xref:i4.adoc[`i4`] ¦ + +¦xref:i5.adoc[`i5`] ¦ + +¦xref:i6.adoc[`i6`] ¦ + +¦xref:i7.adoc[`i7`] ¦ + +¦xref:i8.adoc[`i8`] ¦ + +¦xref:j0.adoc[`j0`] ¦ + +¦xref:j1.adoc[`j1`] ¦ + +¦xref:j2.adoc[`j2`] ¦ + +¦xref:j3.adoc[`j3`] ¦ + +¦xref:j4.adoc[`j4`] ¦ + +¦xref:j5.adoc[`j5`] ¦ + +¦xref:j6.adoc[`j6`] ¦ + +¦xref:j7.adoc[`j7`] ¦ + +¦xref:j8.adoc[`j8`] ¦ + +|=== + + +[#A] + +== A + + + +=== Synopsis + +Declared in header `` + +[source,cpp,subs="verbatim,macros,-callouts"] +---- +struct A; +---- + + + + + +[#B] + +== B + + + +=== Synopsis + +Declared in header `` + +[source,cpp,subs="verbatim,macros,-callouts"] +---- +template< + typename T, + typename U> +struct B; +---- + + + + + +[#C] + +== C + + + +=== Synopsis + +Declared in header `` + +[source,cpp,subs="verbatim,macros,-callouts"] +---- +using C = xref:A.adoc[A]; +---- + + + +[#D] + +== D + + + +=== Synopsis + +Declared in header `` + +[source,cpp,subs="verbatim,macros,-callouts"] +---- +using D = xref:B.adoc[B]; +---- + + + +[#E] + +== E + + + +=== Synopsis + +Declared in header `` + +[source,cpp,subs="verbatim,macros,-callouts"] +---- +template +using E = xref:B.adoc[B]; +---- + + + +[#f0] + +== f0 + + + +=== Synopsis + +Declared in header `` + +[source,cpp,subs="verbatim,macros,-callouts"] +---- +void +f0(xref:A.adoc[A]); +---- + + + + + + + + + +[#f1] + +== f1 + + + +=== Synopsis + +Declared in header `` + +[source,cpp,subs="verbatim,macros,-callouts"] +---- +void +f1(xref:A.adoc[A] const); +---- + + + + + + + + + +[#f2] + +== f2 + + + +=== Synopsis + +Declared in header `` + +[source,cpp,subs="verbatim,macros,-callouts"] +---- +void +f2(xref:A.adoc[A]&); +---- + + + + + + + + + +[#f3] + +== f3 + + + +=== Synopsis + +Declared in header `` + +[source,cpp,subs="verbatim,macros,-callouts"] +---- +void +f3(xref:A.adoc[A] const&); +---- + + + + + + + + + +[#f4] + +== f4 + + + +=== Synopsis + +Declared in header `` + +[source,cpp,subs="verbatim,macros,-callouts"] +---- +void +f4(xref:A.adoc[A]*); +---- + + + + + + + + + +[#f5] + +== f5 + + + +=== Synopsis + +Declared in header `` + +[source,cpp,subs="verbatim,macros,-callouts"] +---- +void +f5(xref:A.adoc[A] const*); +---- + + + + + + + + + +[#f6] + +== f6 + + + +=== Synopsis + +Declared in header `` + +[source,cpp,subs="verbatim,macros,-callouts"] +---- +void +f6(xref:A.adoc[A]**); +---- + + + + + + + + + +[#f7] + +== f7 + + + +=== Synopsis + +Declared in header `` + +[source,cpp,subs="verbatim,macros,-callouts"] +---- +void +f7(xref:A.adoc[A] const**); +---- + + + + + + + + + +[#f8] + +== f8 + + + +=== Synopsis + +Declared in header `` + +[source,cpp,subs="verbatim,macros,-callouts"] +---- +void +f8(xref:A.adoc[A] const const**); +---- + + + + + + + + + +[#g0] + +== g0 + + + +=== Synopsis + +Declared in header `` + +[source,cpp,subs="verbatim,macros,-callouts"] +---- +void +g0(xref:C.adoc[C]); +---- + + + + + + + + + +[#g1] + +== g1 + + + +=== Synopsis + +Declared in header `` + +[source,cpp,subs="verbatim,macros,-callouts"] +---- +void +g1(xref:C.adoc[C] const); +---- + + + + + + + + + +[#g2] + +== g2 + + + +=== Synopsis + +Declared in header `` + +[source,cpp,subs="verbatim,macros,-callouts"] +---- +void +g2(xref:C.adoc[C]&); +---- + + + + + + + + + +[#g3] + +== g3 + + + +=== Synopsis + +Declared in header `` + +[source,cpp,subs="verbatim,macros,-callouts"] +---- +void +g3(xref:C.adoc[C] const&); +---- + + + + + + + + + +[#g4] + +== g4 + + + +=== Synopsis + +Declared in header `` + +[source,cpp,subs="verbatim,macros,-callouts"] +---- +void +g4(xref:C.adoc[C]*); +---- + + + + + + + + + +[#g5] + +== g5 + + + +=== Synopsis + +Declared in header `` + +[source,cpp,subs="verbatim,macros,-callouts"] +---- +void +g5(xref:C.adoc[C] const*); +---- + + + + + + + + + +[#g6] + +== g6 + + + +=== Synopsis + +Declared in header `` + +[source,cpp,subs="verbatim,macros,-callouts"] +---- +void +g6(xref:C.adoc[C]**); +---- + + + + + + + + + +[#g7] + +== g7 + + + +=== Synopsis + +Declared in header `` + +[source,cpp,subs="verbatim,macros,-callouts"] +---- +void +g7(xref:C.adoc[C] const**); +---- + + + + + + + + + +[#g8] + +== g8 + + + +=== Synopsis + +Declared in header `` + +[source,cpp,subs="verbatim,macros,-callouts"] +---- +void +g8(xref:C.adoc[C] const const**); +---- + + + + + + + + + +[#h0] + +== h0 + + + +=== Synopsis + +Declared in header `` + +[source,cpp,subs="verbatim,macros,-callouts"] +---- +void +h0(xref:B.adoc[B]); +---- + + + + + + + + + +[#h1] + +== h1 + + + +=== Synopsis + +Declared in header `` + +[source,cpp,subs="verbatim,macros,-callouts"] +---- +void +h1(xref:B.adoc[B] const); +---- + + + + + + + + + +[#h2] + +== h2 + + + +=== Synopsis + +Declared in header `` + +[source,cpp,subs="verbatim,macros,-callouts"] +---- +void +h2(xref:B.adoc[B]&); +---- + + + + + + + + + +[#h3] + +== h3 + + + +=== Synopsis + +Declared in header `` + +[source,cpp,subs="verbatim,macros,-callouts"] +---- +void +h3(xref:B.adoc[B] const&); +---- + + + + + + + + + +[#h4] + +== h4 + + + +=== Synopsis + +Declared in header `` + +[source,cpp,subs="verbatim,macros,-callouts"] +---- +void +h4(xref:B.adoc[B]*); +---- + + + + + + + + + +[#h5] + +== h5 + + + +=== Synopsis + +Declared in header `` + +[source,cpp,subs="verbatim,macros,-callouts"] +---- +void +h5(xref:B.adoc[B] const*); +---- + + + + + + + + + +[#h6] + +== h6 + + + +=== Synopsis + +Declared in header `` + +[source,cpp,subs="verbatim,macros,-callouts"] +---- +void +h6(xref:B.adoc[B]**); +---- + + + + + + + + + +[#h7] + +== h7 + + + +=== Synopsis + +Declared in header `` + +[source,cpp,subs="verbatim,macros,-callouts"] +---- +void +h7(xref:B.adoc[B] const**); +---- + + + + + + + + + +[#h8] + +== h8 + + + +=== Synopsis + +Declared in header `` + +[source,cpp,subs="verbatim,macros,-callouts"] +---- +void +h8(xref:B.adoc[B] const const**); +---- + + + + + + + + + +[#i0] + +== i0 + + + +=== Synopsis + +Declared in header `` + +[source,cpp,subs="verbatim,macros,-callouts"] +---- +void +i0(xref:D.adoc[D]); +---- + + + + + + + + + +[#i1] + +== i1 + + + +=== Synopsis + +Declared in header `` + +[source,cpp,subs="verbatim,macros,-callouts"] +---- +void +i1(xref:D.adoc[D] const); +---- + + + + + + + + + +[#i2] + +== i2 + + + +=== Synopsis + +Declared in header `` + +[source,cpp,subs="verbatim,macros,-callouts"] +---- +void +i2(xref:D.adoc[D]&); +---- + + + + + + + + + +[#i3] + +== i3 + + + +=== Synopsis + +Declared in header `` + +[source,cpp,subs="verbatim,macros,-callouts"] +---- +void +i3(xref:D.adoc[D] const&); +---- + + + + + + + + + +[#i4] + +== i4 + + + +=== Synopsis + +Declared in header `` + +[source,cpp,subs="verbatim,macros,-callouts"] +---- +void +i4(xref:D.adoc[D]*); +---- + + + + + + + + + +[#i5] + +== i5 + + + +=== Synopsis + +Declared in header `` + +[source,cpp,subs="verbatim,macros,-callouts"] +---- +void +i5(xref:D.adoc[D] const*); +---- + + + + + + + + + +[#i6] + +== i6 + + + +=== Synopsis + +Declared in header `` + +[source,cpp,subs="verbatim,macros,-callouts"] +---- +void +i6(xref:D.adoc[D]**); +---- + + + + + + + + + +[#i7] + +== i7 + + + +=== Synopsis + +Declared in header `` + +[source,cpp,subs="verbatim,macros,-callouts"] +---- +void +i7(xref:D.adoc[D] const**); +---- + + + + + + + + + +[#i8] + +== i8 + + + +=== Synopsis + +Declared in header `` + +[source,cpp,subs="verbatim,macros,-callouts"] +---- +void +i8(xref:D.adoc[D] const const**); +---- + + + + + + + + + +[#j0] + +== j0 + + + +=== Synopsis + +Declared in header `` + +[source,cpp,subs="verbatim,macros,-callouts"] +---- +void +j0(xref:E.adoc[E]); +---- + + + + + + + + + +[#j1] + +== j1 + + + +=== Synopsis + +Declared in header `` + +[source,cpp,subs="verbatim,macros,-callouts"] +---- +void +j1(xref:E.adoc[E] const); +---- + + + + + + + + + +[#j2] + +== j2 + + + +=== Synopsis + +Declared in header `` + +[source,cpp,subs="verbatim,macros,-callouts"] +---- +void +j2(xref:E.adoc[E]&); +---- + + + + + + + + + +[#j3] + +== j3 + + + +=== Synopsis + +Declared in header `` + +[source,cpp,subs="verbatim,macros,-callouts"] +---- +void +j3(xref:E.adoc[E] const&); +---- + + + + + + + + + +[#j4] + +== j4 + + + +=== Synopsis + +Declared in header `` + +[source,cpp,subs="verbatim,macros,-callouts"] +---- +void +j4(xref:E.adoc[E]*); +---- + + + + + + + + + +[#j5] + +== j5 + + + +=== Synopsis + +Declared in header `` + +[source,cpp,subs="verbatim,macros,-callouts"] +---- +void +j5(xref:E.adoc[E] const*); +---- + + + + + + + + + +[#j6] + +== j6 + + + +=== Synopsis + +Declared in header `` + +[source,cpp,subs="verbatim,macros,-callouts"] +---- +void +j6(xref:E.adoc[E]**); +---- + + + + + + + + + +[#j7] + +== j7 + + + +=== Synopsis + +Declared in header `` + +[source,cpp,subs="verbatim,macros,-callouts"] +---- +void +j7(xref:E.adoc[E] const**); +---- + + + + + + + + + +[#j8] + +== j8 + + + +=== Synopsis + +Declared in header `` + +[source,cpp,subs="verbatim,macros,-callouts"] +---- +void +j8(xref:E.adoc[E] const const**); +---- + + + + + + + + + +Created with MrDocs diff --git a/test-files/golden-tests/union.adoc b/test-files/golden-tests/union.adoc new file mode 100644 index 000000000..0d805f284 --- /dev/null +++ b/test-files/golden-tests/union.adoc @@ -0,0 +1,162 @@ += Reference +:mrdocs: + +[#index] + +== Global namespace + +=== Types +[cols=2,separator=¦] +|=== +¦Name ¦Description +¦xref:A.adoc[`A`] ¦ + +¦xref:B.adoc[`B`] ¦ + +|=== + + +[#A] + +== A + + + +=== Synopsis + +Declared in header `` + +[source,cpp,subs="verbatim,macros,-callouts"] +---- +union A; +---- + +=== Data Members +[cols=2,separator=¦] +|=== +¦Name ¦Description +¦xref:A/x.adoc[`x`] [.small]#[variant member]# ¦ + +¦xref:A/y.adoc[`y`] [.small]#[variant member]# ¦ + +|=== + + + +:relfileprefix: ../ +[#A-x] + +== xref:A.adoc[pass:[A]]::x + + + +=== Synopsis + +Declared in header `` + +[source,cpp,subs="verbatim,macros,-callouts"] +---- +int x; +---- + + +:relfileprefix: ../ +[#A-y] + +== xref:A.adoc[pass:[A]]::y + + + +=== Synopsis + +Declared in header `` + +[source,cpp,subs="verbatim,macros,-callouts"] +---- +bool y; +---- + + + +[#B] + +== B + + + +=== Synopsis + +Declared in header `` + +[source,cpp,subs="verbatim,macros,-callouts"] +---- +struct B; +---- + +=== Data Members +[cols=2,separator=¦] +|=== +¦Name ¦Description +¦xref:B/x.adoc[`x`] [.small]#[variant member]# ¦ + +¦xref:B/y.adoc[`y`] [.small]#[variant member]# ¦ + +¦xref:B/z.adoc[`z`] ¦ + +|=== + + + +:relfileprefix: ../ +[#B-x] + +== xref:B.adoc[pass:[B]]::x + + + +=== Synopsis + +Declared in header `` + +[source,cpp,subs="verbatim,macros,-callouts"] +---- +int x; +---- + + +:relfileprefix: ../ +[#B-y] + +== xref:B.adoc[pass:[B]]::y + + + +=== Synopsis + +Declared in header `` + +[source,cpp,subs="verbatim,macros,-callouts"] +---- +bool y; +---- + + +:relfileprefix: ../ +[#B-z] + +== xref:B.adoc[pass:[B]]::z + + + +=== Synopsis + +Declared in header `` + +[source,cpp,subs="verbatim,macros,-callouts"] +---- +int z; +---- + + + +Created with MrDocs diff --git a/test-files/golden-tests/using-1.adoc b/test-files/golden-tests/using-1.adoc new file mode 100644 index 000000000..a9abf7a06 --- /dev/null +++ b/test-files/golden-tests/using-1.adoc @@ -0,0 +1,30 @@ += Reference +:mrdocs: + +[#index] + +== Global namespace + +=== Namespaces +[cols=2,separator=¦] +|=== +¦Name ¦Description +¦xref:LongName.adoc[`LongName`] ¦ + +|=== + +=== Using Directives +[cols=2,separator=¦] +|=== +¦Name ¦Description +¦xref:LongName.adoc[`LongName`] ¦ + +|=== + +[#LongName] + +== LongName + + + +Created with MrDocs diff --git a/test-files/golden-tests/using-2.adoc b/test-files/golden-tests/using-2.adoc new file mode 100644 index 000000000..1f3168942 --- /dev/null +++ b/test-files/golden-tests/using-2.adoc @@ -0,0 +1,120 @@ += Reference +:mrdocs: + +[#index] + +== Global namespace + +=== Namespaces +[cols=2,separator=¦] +|=== +¦Name ¦Description +¦xref:LongName.adoc[`LongName`] ¦ + +|=== + + +[#LongName] + +== LongName + +=== Types +[cols=2,separator=¦] +|=== +¦Name ¦Description +¦xref:LongName/S1.adoc[`S1`] ¦ + +¦xref:LongName/S2.adoc[`S2`] ¦ + +|=== + +:relfileprefix: ../ +[#LongName-S1] + +== xref:LongName.adoc[pass:[LongName]]::S1 + + + +=== Synopsis + +Declared in header `` + +[source,cpp,subs="verbatim,macros,-callouts"] +---- +struct S1; +---- + + + + +:relfileprefix: ../ +[#LongName-S2] + +== xref:LongName.adoc[pass:[LongName]]::S2 + + + +=== Synopsis + +Declared in header `` + +[source,cpp,subs="verbatim,macros,-callouts"] +---- +struct S2; +---- + + + + + +[#S1] + +== S1 + + + +=== Synopsis + +Declared in header `` + +[source,cpp,subs="verbatim,macros,-callouts"] +---- +using xref:LongName.adoc[LongName]::S1; +---- + + +=== Introduced Symbols + +|=== +| Name +| S1 +|=== + + + +[#S2] + +== S2 + + + +=== Synopsis + +Declared in header `` + +[source,cpp,subs="verbatim,macros,-callouts"] +---- +using xref:LongName.adoc[LongName]::S2; +---- + + +=== Introduced Symbols + +|=== +| Name +| S2 +|=== + + + +Created with MrDocs diff --git a/test-files/golden-tests/using-3.adoc b/test-files/golden-tests/using-3.adoc new file mode 100644 index 000000000..18da6e1ad --- /dev/null +++ b/test-files/golden-tests/using-3.adoc @@ -0,0 +1,207 @@ += Reference +:mrdocs: + +[#index] + +== Global namespace + +=== Types +[cols=2,separator=¦] +|=== +¦Name ¦Description +¦xref:A.adoc[`A`] ¦ + +¦xref:B.adoc[`B`] ¦ + +¦xref:C.adoc[`C`] ¦ + +|=== + + +[#A] + +== A + + + +=== Synopsis + +Declared in header `` + +[source,cpp,subs="verbatim,macros,-callouts"] +---- +struct A; +---- + +=== Member Functions +[cols=2,separator=¦] +|=== +¦Name ¦Description +¦xref:A/f.adoc[`f`] ¦ + +|=== + + + +:relfileprefix: ../ +[#A-f] + +== xref:A.adoc[pass:[A]]::f + + + +=== Synopsis + +Declared in header `` + +[source,cpp,subs="verbatim,macros,-callouts"] +---- +void +f(int); +---- + + + + + + + + + +[#B] + +== B + + + +=== Synopsis + +Declared in header `` + +[source,cpp,subs="verbatim,macros,-callouts"] +---- +struct B; +---- + +=== Member Functions +[cols=2,separator=¦] +|=== +¦Name ¦Description +¦xref:B/f.adoc[`f`] ¦ + +|=== + + + +:relfileprefix: ../ +[#B-f] + +== xref:B.adoc[pass:[B]]::f + + + +=== Synopsis + +Declared in header `` + +[source,cpp,subs="verbatim,macros,-callouts"] +---- +void +f(bool); +---- + + + + + + + + + +[#C] + +== C + + + +=== Synopsis + +Declared in header `` + +[source,cpp,subs="verbatim,macros,-callouts"] +---- +struct C + : xref:A.adoc[A] + , xref:B.adoc[B]; +---- + +=== Member Functions +[cols=2,separator=¦] +|=== +¦Name ¦Description +¦xref:A/f.adoc[`f`] ¦ +|=== +=== Using Declarations +[cols=2,separator=¦] +|=== +¦Name ¦Description +¦xref:C/f-08.adoc[`f`] ¦ + +¦xref:C/f-03.adoc[`f`] ¦ + +|=== + + + +:relfileprefix: ../ +[#C-f-08] + +== xref:C.adoc[pass:[C]]::f + + + +=== Synopsis + +Declared in header `` + +[source,cpp,subs="verbatim,macros,-callouts"] +---- +using xref:A.adoc[A]::f; +---- + + +=== Introduced Symbols + +|=== +| Name +| f +|=== + + +:relfileprefix: ../ +[#C-f-03] + +== xref:C.adoc[pass:[C]]::f + + + +=== Synopsis + +Declared in header `` + +[source,cpp,subs="verbatim,macros,-callouts"] +---- +using xref:B.adoc[B]::f; +---- + + +=== Introduced Symbols + +|=== +| Name +| f +|=== + + + +Created with MrDocs diff --git a/test-files/golden-tests/utf-8.adoc b/test-files/golden-tests/utf-8.adoc new file mode 100644 index 000000000..6bb822f7a --- /dev/null +++ b/test-files/golden-tests/utf-8.adoc @@ -0,0 +1,41 @@ += Reference +:mrdocs: + +[#index] + +== Global namespace + +=== Functions +[cols=2,separator=¦] +|=== +¦Name ¦Description +¦xref:Христос_воскрес.adoc[`Христос_воскрес`] ¦ + +|=== + + +[#Христос_воскрес] + +== Христос_воскрес + + + +=== Synopsis + +Declared in header `` + +[source,cpp,subs="verbatim,macros,-callouts"] +---- +bool +Христос_воскрес(); +---- + + + + + + + + + +Created with MrDocs diff --git a/test-files/golden-tests/var-template.adoc b/test-files/golden-tests/var-template.adoc new file mode 100644 index 000000000..f071f9ff7 --- /dev/null +++ b/test-files/golden-tests/var-template.adoc @@ -0,0 +1,169 @@ += Reference +:mrdocs: + +[#index] + +== Global namespace + +=== Types +[cols=2,separator=¦] +|=== +¦Name ¦Description +¦xref:B.adoc[`B`] ¦ + +|=== +=== Variables +[cols=2,separator=¦] +|=== +¦Name ¦Description +¦xref:A-084.adoc[`A`] ¦ + +¦xref:A-08e.adoc[`A`] ¦ + +¦xref:A-01.adoc[`A`] ¦ + +|=== + + +[#A-084] + +== A + + + +=== Synopsis + +Declared in header `` + +[source,cpp,subs="verbatim,macros,-callouts"] +---- +template +unsigned int A = sizeof(T); +---- + + + +[#A-08e] + +== A + + + +=== Synopsis + +Declared in header `` + +[source,cpp,subs="verbatim,macros,-callouts"] +---- +template<> +unsigned int xref:A-084.adoc[pass:[A]] = 0; +---- + + + +[#A-01] + +== A + + + +=== Synopsis + +Declared in header `` + +[source,cpp,subs="verbatim,macros,-callouts"] +---- +template +unsigned int xref:A-084.adoc[pass:[A]] = sizeof(T); +---- + + + +[#B] + +== B + + + +=== Synopsis + +Declared in header `` + +[source,cpp,subs="verbatim,macros,-callouts"] +---- +struct B; +---- + +=== Static Data Members +[cols=2,separator=¦] +|=== +¦Name ¦Description +¦xref:B/C-0e.adoc[`C`] ¦ + +¦xref:B/C-05.adoc[`C`] ¦ + +¦xref:B/C-0c.adoc[`C`] ¦ + +|=== + + + +:relfileprefix: ../ +[#B-C-0e] + +== xref:B.adoc[pass:[B]]::C + + + +=== Synopsis + +Declared in header `` + +[source,cpp,subs="verbatim,macros,-callouts"] +---- +template +static +unsigned int C = 0; +---- + + +:relfileprefix: ../ +[#B-C-05] + +== xref:B.adoc[pass:[B]]::C + + + +=== Synopsis + +Declared in header `` + +[source,cpp,subs="verbatim,macros,-callouts"] +---- +template<> +static +unsigned int xref:B/C-0e.adoc[pass:[C]] = -1; +---- + + +:relfileprefix: ../ +[#B-C-0c] + +== xref:B.adoc[pass:[B]]::C + + + +=== Synopsis + +Declared in header `` + +[source,cpp,subs="verbatim,macros,-callouts"] +---- +template +static +unsigned int xref:B/C-0e.adoc[pass:[C]] = sizeof(T); +---- + + + +Created with MrDocs diff --git a/test-files/golden-tests/variadic-function.adoc b/test-files/golden-tests/variadic-function.adoc new file mode 100644 index 000000000..43998d264 --- /dev/null +++ b/test-files/golden-tests/variadic-function.adoc @@ -0,0 +1,134 @@ += Reference +:mrdocs: + +[#index] + +== Global namespace + +=== Types +[cols=2,separator=¦] +|=== +¦Name ¦Description +¦xref:C.adoc[`C`] ¦ + +¦xref:T.adoc[`T`] ¦ + +¦xref:U.adoc[`U`] ¦ + +|=== +=== Functions +[cols=2,separator=¦] +|=== +¦Name ¦Description +¦xref:f.adoc[`f`] ¦ + +¦xref:g.adoc[`g`] ¦ + +|=== + + +[#T] + +== T + + + +=== Synopsis + +Declared in header `` + +[source,cpp,subs="verbatim,macros,-callouts"] +---- +using T = void(...); +---- + + + +[#U] + +== U + + + +=== Synopsis + +Declared in header `` + +[source,cpp,subs="verbatim,macros,-callouts"] +---- +using U = void(int, ...); +---- + + + +[#f] + +== f + + + +=== Synopsis + +Declared in header `` + +[source,cpp,subs="verbatim,macros,-callouts"] +---- +void +f(...); +---- + + + + + + + + + +[#g] + +== g + + + +=== Synopsis + +Declared in header `` + +[source,cpp,subs="verbatim,macros,-callouts"] +---- +void +g(int, ...); +---- + + + + + + + + + +[#C] + +== C + + + +=== Synopsis + +Declared in header `` + +[source,cpp,subs="verbatim,macros,-callouts"] +---- +template< + typename A = void(...), + typename B = void(int, ...)> +struct C; +---- + + + + + +Created with MrDocs