summaryrefslogtreecommitdiffstats
path: root/clang-tools-extra/test/clang-doc
Commit message (Collapse)AuthorAgeFilesLines
* [clang-doc] Fix records in global namespaceDiego Astiazaran2019-08-161-4/+10
| | | | | | | | | | | | | When a Record is declared in the global namespace, clang-doc serializes it as a child of the global namespace, so the global namespace is now one if its parent namespaces. This namespace was not being included in the list of namespaces of the Info causing paths to be incorrect and the index rendered incorrectly. Affected tests have been fixed. Differential revision: https://reviews.llvm.org/D66298 llvm-svn: 369123
* [clang-doc] Fix bitcode writer for access specifiersDiego Astiazaran2019-08-151-0/+1
| | | | | | | | | | | | | | | Bitcode writer was not emitting the corresponding record for the Access attribute of a FunctionInfo. This has been added. AS_none was being used as the default value for any AcesssSpecifier attribute (in FunctionInfo and MemberTypeInfo), this has been changed to AS_public because this is the enum value that evaluates to 0. The bitcode writer doesn't write values that are 0 so if an attribute was set to AS_public, this value is not written and after reading the bitcode it would have the default value which is AS_none. This is why the default value is now AS_public. Differential Revision: https://reviews.llvm.org/D66151 llvm-svn: 369063
* [clang-doc] Switch to default to all-TUs executorJulie Hockett2018-10-262-2/+2
| | | | | | | | Since we generally want to document a whole project, not just one file. Differential Revision: https://reviews.llvm.org/D53170 llvm-svn: 345418
* [clang-doc] Limit integration testsJulie Hockett2018-10-1633-4459/+80
| | | | | | | | | | | | | | | | Now that the clang-doc libraries are covered by unit tests, we don't need to have extensive (and unmaintainable) integration tests. This replaces the integration test suite with a smaller one that just tests the tool itself and removes extraneous dumping logic from the tool itself. Includes tests that cover the parse->serialize->merge->generate pipeline, as well as tests for the --public, --format, --doxygen, and --output flags. Differential Revision: https://reviews.llvm.org/D53150 llvm-svn: 344655
* [clang-doc] Add unit tests for bitcodeJulie Hockett2018-10-1624-544/+544
| | | | | | | | | | | | Adds unit tests for the BitcodeWriter and BitcodeReader libraries. This is part of a move to convert clang-doc's tests to a more maintainable unit test framework, with a smaller number of integration tests to maintain and more granular failure feedback. Differential Revision: https://reviews.llvm.org/D53082 llvm-svn: 344651
* [clang-doc] Clean up Markdown outputJulie Hockett2018-10-045-19/+38
| | | | | | | | Make the output for the MDGenerator cleaner and more readable. Differential Revision: https://reviews.llvm.org/D52754 llvm-svn: 343818
* [clang-doc] Avoid parsing undefined base classesJulie Hockett2018-10-036-344/+403
| | | | | | | | | Don't try to parse base classes for declarations that are not definitions (segfaults, as there is no DefinitionData to access). Differential Revision: https://reviews.llvm.org/D52313 llvm-svn: 343703
* Reland "Implement a (simple) Markdown generator"Julie Hockett2018-09-115-0/+349
| | | | | | | | Relanding with fixes to tests for the failing bots. Differential Revision: https://reviews.llvm.org/D43424 llvm-svn: 341955
* Revert "Implement a (simple) Markdown generator"Julie Hockett2018-08-165-349/+0
| | | | | | | This reverts commit r339948, as it's breaking a few bots in ways that I can't reproduce right now. llvm-svn: 339966
* Implement a (simple) Markdown generatorJulie Hockett2018-08-165-0/+349
| | | | | | | | | | | | | | | Implementing a simple Markdown generator from the emitted bitcode summary of declarations. Very primitive at this point, but will be expanded. Currently emits an .md file for each class and namespace, listing its contents. For a more detailed overview of the tool, see the design document on the mailing list: http://lists.llvm.org/pipermail/cfe-dev/2017-December/056203.html Differential Revision: https://reviews.llvm.org/D43424 llvm-svn: 339948
* [clang-doc] Pass over function-internal declarationsJulie Hockett2018-08-136-1125/+709
| | | | llvm-svn: 339592
* Reland "[clang-doc] Refactoring mapper to map by scope"Julie Hockett2018-08-0224-1519/+3736
| | | | | | | | | | | | | | | Relanding with a minor change to prevent an assertion on release bots. The result of this adjusted mapper pass is that all Function and Enum infos are absorbed into the info of their enclosing scope (i.e. the class or namespace in which they are defined). Namespace and Record infos are passed along to the final output, but the second pass creates a reference to each in its parent scope. As a result, the top-level final outputs are Namespaces and Records. Differential Revision: https://reviews.llvm.org/D48341 llvm-svn: 338763
* Revert "[clang-doc] Refactoring mapper to map by scope"Julie Hockett2018-08-0224-3736/+1519
| | | | | | This reverts commit r338738 as it's breaking the bots. llvm-svn: 338748
* [clang-doc] Refactoring mapper to map by scopeJulie Hockett2018-08-0224-1519/+3736
| | | | | | | | | | | The result of this adjusted mapper pass is that all Function and Enum infos are absorbed into the info of their enclosing scope (i.e. the class or namespace in which they are defined). Namespace and Record infos are passed along to the final output, but the second pass creates a reference to each in its parent scope. As a result, the top-level final outputs are Namespaces and Records. llvm-svn: 338738
* [clang-doc] Create a script to generate testsJulie Hockett2018-07-2023-1389/+1634
| | | | | | | | | Upstreaming the script I use to generate clang-doc tests (and updating the existing tests to use it) Differential Revision: https://reviews.llvm.org/D49268 llvm-svn: 337632
* [clang-doc] Adding PublicOnly flagJulie Hockett2018-07-203-0/+455
| | | | | | | | | | | Submitted on behalf of Annie Cherkaev (@anniecherk) Added a flag which, when enabled, documents only those methods and fields which have a Public attribute. Differential Revision: https://reviews.llvm.org/D48395 llvm-svn: 337602
* [clang-doc] Implement a YAML generatorJulie Hockett2018-06-063-0/+481
| | | | | | | | | Implmenting a YAML generator from the emitted bitcode summary of declarations. Emits one YAML file for each declaration information. For a more detailed overview of the tool, see the design document on the mailing list: http://lists.llvm.org/pipermail/cfe-dev/2017-December/056203.html llvm-svn: 334103
* [clang-doc] Implement reducer portion of the frontend frameworkJulie Hockett2018-06-043-0/+560
| | | | | | | | | | | | | | | | | | Implements a simple, in-memory reducer for the mapped output of the initial tool. This creates a collection object for storing the deduplicated infos on each declaration, and populates that from the mapper output. The collection object is serialized to LLVM bitstream. On reading each serialized output, it checks to see if a merge is necessary and if so, merges the new info with the existing info (prefering the existing one if conflicts exist). For a more detailed overview of the tool, see the design document on the mailing list: http://lists.llvm.org/pipermail/cfe-dev/2017-December/056203.html Differential Revision: https://reviews.llvm.org/D43341 llvm-svn: 333932
* [clang-doc] Attaching a name to reference dataJulie Hockett2018-05-0410-75/+125
| | | | | | | | | | This adds the name of the referenced decl, in addition to its USR, to the saved data, so that the backend can look at an info in isolation and still be able to construct a human-readable name for it. Differential Revision: https://reviews.llvm.org/D46281 llvm-svn: 331539
* [clang-doc] Reland "[clang-doc] Setup clang-doc frontend framework"Julie Hockett2018-03-2210-0/+440
| | | | | | Fixed windows release build tests. llvm-svn: 328270
* Revert "[clang-doc] Reland "[clang-doc] Setup clang-doc frontend framework""Julie Hockett2018-03-2210-440/+0
| | | | | | | This reverts commit r328150 until we can fix the test that are failing on the Windows release build. llvm-svn: 328172
* [clang-doc] Reland "[clang-doc] Setup clang-doc frontend framework"Julie Hockett2018-03-2110-0/+440
| | | | | | Fixing the the failing Windows tests. llvm-svn: 328150
* Revert "Reland "[clang-doc] Setup clang-doc frontend framework""Julie Hockett2018-03-1210-437/+0
| | | | | | | This reverts commit r327295 since it was causing the Windows bots to fail. llvm-svn: 327346
* Reland "[clang-doc] Setup clang-doc frontend framework"Julie Hockett2018-03-1210-0/+437
| | | | | | | There was a missing newline in the docs, and a static_assert that needed to be a normal assert. llvm-svn: 327295
* Revert "[clang-doc] Setup clang-doc frontend framework"Julie Hockett2018-03-0910-437/+0
| | | | | | | This reverts commit r327102, since it was breaking the linux-abi-test on x86. llvm-svn: 327103
* [clang-doc] Setup clang-doc frontend frameworkJulie Hockett2018-03-0910-0/+437
Setting up the mapper part of the frontend framework for a clang-doc tool. It creates a series of relevant matchers for declarations, and uses the ToolExecutor to traverse the AST and extract the matching declarations and comments. The mapper serializes the extracted information to individual records for reducing and eventually doc generation. For a more detailed overview of the tool, see the design document on the mailing list: http://lists.llvm.org/pipermail/cfe-dev/2017-December/056203.html Differential Revision: https://reviews.llvm.org/D41102 llvm-svn: 327102
OpenPOWER on IntegriCloud