e4330a302ac20b41b9800267ebd4b5b01f8553f8 |
|
10-Sep-2012 |
Dmitri Gribenko <gribozavr@gmail.com> |
Comment AST: TableGen'ize all command lists in CommentCommandTraits.cpp. Now we have a list of all commands. This is a good thing in itself, but it also enables us to easily implement typo correction for command names. With this change we have objects that contain information about each command, so it makes sense to resolve command name just once during lexing (currently we store command names as strings and do a linear search every time some property value is needed). Thus comment token and AST nodes were changed to contain a command ID -- index into a tables of builtin and registered commands. Unknown commands are registered during parsing and thus are also uniformly assigned an ID. Using an ID instead of a StringRef is also a nice memory optimization since ID is a small integer that fits into a common bitfield in Comment class. This change implies that to get any information about a command (even a command name) we need a CommandTraits object to resolve the command ID to CommandInfo*. Currently a fresh temporary CommandTraits object is created whenever it is needed since it does not have any state. But with this change it has state -- new commands can be registered, so a CommandTraits object was added to ASTContext. Also, in libclang CXComment has to be expanded to include a CXTranslationUnit so that all functions working on comment AST nodes can get a CommandTraits object. This breaks binary compatibility of CXComment APIs. Now clang_FullComment_getAsXML(CXTranslationUnit TU, CXComment CXC) doesn't need TU parameter anymore, so it was removed. This is a source-incompatible change for this C API. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@163540 91177308-0d34-0410-b5e6-96231b3b80d8
/external/clang/test/Index/annotate-comments.cpp
|
c88c6a490ee946d80e306efaf83ae41b8f002741 |
|
28-Aug-2012 |
Dmitri Gribenko <gribozavr@gmail.com> |
Merging consecutive comments: be more conservative. Should fix part 2 of PR13374. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@162723 91177308-0d34-0410-b5e6-96231b3b80d8
/external/clang/test/Index/annotate-comments.cpp
|
0ac4ec7f1c79a13f813fa644997a4b89ac0ba3aa |
|
21-Aug-2012 |
Dmitri Gribenko <gribozavr@gmail.com> |
CommentBriefParser: allow paragraphs to be separated by line of whitespace. Skip paragraphs that contain only whitespace. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@162315 91177308-0d34-0410-b5e6-96231b3b80d8
/external/clang/test/Index/annotate-comments.cpp
|
9cdd157912cf9987f1f4d1994e4a5bc44d8996d7 |
|
09-Aug-2012 |
Dmitri Gribenko <gribozavr@gmail.com> |
Remove absolute file path in test. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@161602 91177308-0d34-0410-b5e6-96231b3b80d8
/external/clang/test/Index/annotate-comments.cpp
|
62290ae569016345b79d4e11dd93abc300e5a681 |
|
09-Aug-2012 |
Dmitri Gribenko <gribozavr@gmail.com> |
Comment to HTML and XML conversion: ignore commands that contain a declaration as their argument. For example, \fn, \function, \typedef, \method, \class etc. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@161601 91177308-0d34-0410-b5e6-96231b3b80d8
/external/clang/test/Index/annotate-comments.cpp
|
d1db12540e572d6e3d998a4b770a6b2c7267d7fc |
|
09-Aug-2012 |
Dmitri Gribenko <gribozavr@gmail.com> |
Comment to HTML and XML conversion: use CommandTraits to classify commands. This also fixes a bug in comment to XML conversion: \result was just an ordinary paragraph, not an alias for \returns. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@161596 91177308-0d34-0410-b5e6-96231b3b80d8
/external/clang/test/Index/annotate-comments.cpp
|
6cd4420945489e7331012103048f162288a6c7d8 |
|
09-Aug-2012 |
Dmitri Gribenko <gribozavr@gmail.com> |
Comment XML: use xml:space="preserve" in Verbatim tags, so that XML tidy does not compress spaces in verbatim content. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@161531 91177308-0d34-0410-b5e6-96231b3b80d8
/external/clang/test/Index/annotate-comments.cpp
|
cff339a60a571a606a7510548f661dc6a719368d |
|
07-Aug-2012 |
Dmitri Gribenko <gribozavr@gmail.com> |
Comment AST: DeclInfo: add a special kind for enums. Comment XML: add a root node kind for enums. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@161442 91177308-0d34-0410-b5e6-96231b3b80d8
/external/clang/test/Index/annotate-comments.cpp
|
dd7b803e6ce5b8e61cf3b14af2c57199e5e991d9 |
|
07-Aug-2012 |
Dmitri Gribenko <gribozavr@gmail.com> |
Comment AST: treat enumerators as "variables" in DeclInfo. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@161435 91177308-0d34-0410-b5e6-96231b3b80d8
/external/clang/test/Index/annotate-comments.cpp
|
f303d4cb10648ac9c2080ae7c9dd507ba615e3a7 |
|
07-Aug-2012 |
Dmitri Gribenko <gribozavr@gmail.com> |
libclang API for comment-to-xml conversion. The implementation also includes a Relax NG schema and tests for the schema itself. The schema is used in c-index-test to verify that XML documents we produce are valid. In order to do the validation, we add an optional libxml2 dependency for c-index-test. Credits for CMake part go to Doug Gregor. Credits for Autoconf part go to Eric Christopher. Thanks! git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@161431 91177308-0d34-0410-b5e6-96231b3b80d8
/external/clang/test/Index/annotate-comments.cpp
|
6a425525e52aba5a8e14db35d50a712be4e5e2e1 |
|
02-Aug-2012 |
Dmitri Gribenko <gribozavr@gmail.com> |
Comment to HTML conversion: correct typo in CSS class name: taram -> tparam git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@161145 91177308-0d34-0410-b5e6-96231b3b80d8
/external/clang/test/Index/annotate-comments.cpp
|
f0d151c485bec560e73c74e816cd969e0c485c71 |
|
01-Aug-2012 |
Dmitri Gribenko <gribozavr@gmail.com> |
Comment to HTML conversion: skip \tparam commands with whitespace paragraphs git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@161096 91177308-0d34-0410-b5e6-96231b3b80d8
/external/clang/test/Index/annotate-comments.cpp
|
59500fec689f7def27bb83bd21e19417ad527906 |
|
01-Aug-2012 |
Dmitri Gribenko <gribozavr@gmail.com> |
Comment to HTML conversion: escape HTML special characters in command arguments git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@161094 91177308-0d34-0410-b5e6-96231b3b80d8
/external/clang/test/Index/annotate-comments.cpp
|
96b098674908eaa59a9128f3305cda6fbbdad563 |
|
01-Aug-2012 |
Dmitri Gribenko <gribozavr@gmail.com> |
Comment parsing: add support for \tparam command on all levels. The only caveat is renumbering CXCommentKind enum for aesthetic reasons -- this breaks libclang binary compatibility, but should not be a problem since API is so new. This also fixes PR13372 as a side-effect. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@161087 91177308-0d34-0410-b5e6-96231b3b80d8
/external/clang/test/Index/annotate-comments.cpp
|
477a9f58c1b197f315befd03b42a8a0b3a2f0ff9 |
|
27-Jul-2012 |
Dmitri Gribenko <gribozavr@gmail.com> |
Implement resolving of HTML character references (named: &, decimal: *, hex: ) during comment parsing. Now internal representation of plain text in comment AST does not contain character references, but the characters themselves. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@160891 91177308-0d34-0410-b5e6-96231b3b80d8
/external/clang/test/Index/annotate-comments.cpp
|
2c6b00e7126399210b759f4da53c680bee01a706 |
|
25-Jul-2012 |
Dmitri Gribenko <gribozavr@gmail.com> |
libclang comment to HTML rendering: \result is the same as \returns git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@160738 91177308-0d34-0410-b5e6-96231b3b80d8
/external/clang/test/Index/annotate-comments.cpp
|
1f8c529a2a938a5055f440aa063ea0b49eafae98 |
|
23-Jul-2012 |
Dmitri Gribenko <gribozavr@gmail.com> |
libclang comments AST: clang_ParamCommandComment_getParamName: don't assert when a \param command does not have a parameter name, just return an empty string instead. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@160638 91177308-0d34-0410-b5e6-96231b3b80d8
/external/clang/test/Index/annotate-comments.cpp
|
2d66a5016d4aacce362f89290261c8a1a6eef0d3 |
|
23-Jul-2012 |
Dmitri Gribenko <gribozavr@gmail.com> |
Comment AST: add InlineContentComment::RenderKind to specify a default rendering mode for clients that don't want to interpret Doxygen commands. Also add a libclang API to query this information. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@160633 91177308-0d34-0410-b5e6-96231b3b80d8
/external/clang/test/Index/annotate-comments.cpp
|
3e63d332baf0d3b8a5c0b7c2dac2ae85615b1d47 |
|
21-Jul-2012 |
Dmitri Gribenko <gribozavr@gmail.com> |
Comment to HTML conversion: add more CSS classes to identify function arguments by index. This is useful if the user does not document all arguments, and we can't find a particular argument by index via :nth-of-type() CSS selector. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@160595 91177308-0d34-0410-b5e6-96231b3b80d8
/external/clang/test/Index/annotate-comments.cpp
|
ae99b75fbbac1deaccdcc1b326b8fb6b07a1e72d |
|
20-Jul-2012 |
Dmitri Gribenko <gribozavr@gmail.com> |
Add libclang APIs to walk comments ASTs and an API to convert a comment to an HTML fragment. For testing, c-index-test now has even more output: * HTML rendering of a comment * comment AST tree dump in S-expressions like Comment::dump(), but implemented * with libclang APIs. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@160577 91177308-0d34-0410-b5e6-96231b3b80d8
/external/clang/test/Index/annotate-comments.cpp
|
72021ff4038cbc48b09a3acb743e319809f086db |
|
20-Jul-2012 |
Dmitri Gribenko <gribozavr@gmail.com> |
CommentBriefParser: use \returns if we can't find the \brief or just a plain paragraph. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@160550 91177308-0d34-0410-b5e6-96231b3b80d8
/external/clang/test/Index/annotate-comments.cpp
|
659a7124c7069b3e01dd171f7290562f58f9e97a |
|
17-Jul-2012 |
Dmitri Gribenko <gribozavr@gmail.com> |
CommentBriefParser: make \short should equivalent to \brief, per Doxygen manual. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@160383 91177308-0d34-0410-b5e6-96231b3b80d8
/external/clang/test/Index/annotate-comments.cpp
|
9c00676f2393335dc60c61faf944d4f8f622fac6 |
|
07-Jul-2012 |
Dmitri Gribenko <gribozavr@gmail.com> |
Restrict the set of declaration kinds for which we allow trailing comments. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@159878 91177308-0d34-0410-b5e6-96231b3b80d8
/external/clang/test/Index/annotate-comments.cpp
|
d558b5238df74ef3cb76d7125375a5c28fe0eaa9 |
|
28-Jun-2012 |
Dmitri Gribenko <gribozavr@gmail.com> |
Cleanup \brief comment. Since it is a single paragraph, no need to save newlines there. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@159325 91177308-0d34-0410-b5e6-96231b3b80d8
/external/clang/test/Index/annotate-comments.cpp
|
f199b9cd4af562029a3c7b82c4672819b2c39e70 |
|
28-Jun-2012 |
Dmitri Gribenko <gribozavr@gmail.com> |
Teach \brief parser about commands that start a new paragraph implicitly git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@159309 91177308-0d34-0410-b5e6-96231b3b80d8
/external/clang/test/Index/annotate-comments.cpp
|
8bdb58a7835a9a90dd9b9791fccf269cbc1dcef3 |
|
28-Jun-2012 |
Dmitri Gribenko <gribozavr@gmail.com> |
Attaching documentation comments to declarations: don't attach a comment to a declaration if there is a preprocessor directive between them. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@159305 91177308-0d34-0410-b5e6-96231b3b80d8
/external/clang/test/Index/annotate-comments.cpp
|
2d44d77fed3200e2eff289f55493317e90d3398c |
|
26-Jun-2012 |
Dmitri Gribenko <gribozavr@gmail.com> |
Implement a lexer for structured comments. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@159223 91177308-0d34-0410-b5e6-96231b3b80d8
/external/clang/test/Index/annotate-comments.cpp
|
aa0cd85838f2a024e589ea4e8c2094130065af21 |
|
20-Jun-2012 |
Dmitri Gribenko <gribozavr@gmail.com> |
Structured comment parsing, first step. * Retain comments in the AST * Serialize/deserialize comments * Find comments attached to a certain Decl * Expose raw comment text and SourceRange via libclang git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@158771 91177308-0d34-0410-b5e6-96231b3b80d8
/external/clang/test/Index/annotate-comments.cpp
|