r337899 - [clang-format ]Extend IncludeCategories regex documentation
Krasimir Georgiev via cfe-commits
cfe-commits at lists.llvm.org
Wed Jul 25 03:21:48 PDT 2018
Author: krasimir
Date: Wed Jul 25 03:21:47 2018
New Revision: 337899
URL: http://llvm.org/viewvc/llvm-project?rev=337899&view=rev
Log:
[clang-format ]Extend IncludeCategories regex documentation
Summary:
Extend the Clang-Format IncludeCategories documentation by adding a link to the supported regular expression standard (POSIX).
And extenting the example with a system header regex.
[[ https://bugs.llvm.org/show_bug.cgi?id=35041 | bug 35041]]
Contributed by WimLeflere!
Reviewers: krasimir, Typz
Reviewed By: krasimir
Subscribers: cfe-commits
Differential Revision: https://reviews.llvm.org/D48827
Modified:
cfe/trunk/docs/ClangFormatStyleOptions.rst
cfe/trunk/docs/tools/dump_format_style.py
cfe/trunk/include/clang/Format/Format.h
cfe/trunk/include/clang/Tooling/Inclusions/IncludeStyle.h
Modified: cfe/trunk/docs/ClangFormatStyleOptions.rst
URL: http://llvm.org/viewvc/llvm-project/cfe/trunk/docs/ClangFormatStyleOptions.rst?rev=337899&r1=337898&r2=337899&view=diff
==============================================================================
--- cfe/trunk/docs/ClangFormatStyleOptions.rst (original)
+++ cfe/trunk/docs/ClangFormatStyleOptions.rst Wed Jul 25 03:21:47 2018
@@ -1280,6 +1280,10 @@ the configuration (without a prefix: ``A
Regular expressions denoting the different ``#include`` categories
used for ordering ``#includes``.
+ `POSIX extended
+ <http://pubs.opengroup.org/onlinepubs/9699919799/basedefs/V1_chap09.html>`_
+ regular expressions are supported.
+
These regular expressions are matched against the filename of an include
(including the <> or "") in order. The value belonging to the first
matching regular expression is assigned and ``#includes`` are sorted first
@@ -1302,6 +1306,8 @@ the configuration (without a prefix: ``A
Priority: 2
- Regex: '^(<|"(gtest|gmock|isl|json)/)'
Priority: 3
+ - Regex: '<[[:alnum:].]+>'
+ Priority: 4
- Regex: '.*'
Priority: 1
Modified: cfe/trunk/docs/tools/dump_format_style.py
URL: http://llvm.org/viewvc/llvm-project/cfe/trunk/docs/tools/dump_format_style.py?rev=337899&r1=337898&r2=337899&view=diff
==============================================================================
--- cfe/trunk/docs/tools/dump_format_style.py (original)
+++ cfe/trunk/docs/tools/dump_format_style.py Wed Jul 25 03:21:47 2018
@@ -10,6 +10,7 @@ import urllib2
CLANG_DIR = os.path.join(os.path.dirname(__file__), '../..')
FORMAT_STYLE_FILE = os.path.join(CLANG_DIR, 'include/clang/Format/Format.h')
+INCLUDE_STYLE_FILE = os.path.join(CLANG_DIR, 'include/clang/Tooling/Inclusions/IncludeStyle.h')
DOC_FILE = os.path.join(CLANG_DIR, 'docs/ClangFormatStyleOptions.rst')
@@ -115,7 +116,7 @@ def read_options(header):
for line in header:
line = line.strip()
if state == State.BeforeStruct:
- if line == 'struct FormatStyle {':
+ if line == 'struct FormatStyle {' or line == 'struct IncludeStyle {':
state = State.InStruct
elif state == State.InStruct:
if line.startswith('///'):
@@ -188,6 +189,7 @@ def read_options(header):
return options
options = read_options(open(FORMAT_STYLE_FILE))
+options += read_options(open(INCLUDE_STYLE_FILE))
options = sorted(options, key=lambda x: x.name)
options_text = '\n\n'.join(map(str, options))
Modified: cfe/trunk/include/clang/Format/Format.h
URL: http://llvm.org/viewvc/llvm-project/cfe/trunk/include/clang/Format/Format.h?rev=337899&r1=337898&r2=337899&view=diff
==============================================================================
--- cfe/trunk/include/clang/Format/Format.h (original)
+++ cfe/trunk/include/clang/Format/Format.h Wed Jul 25 03:21:47 2018
@@ -1296,7 +1296,7 @@ struct FormatStyle {
/// If ``Never``, lays out Objective-C protocol conformance list items
/// onto individual lines whenever they go over ``ColumnLimit``.
///
- /// \code
+ /// \code{.objc}
/// Always (or Auto, if BinPackParameters=true):
/// @interface ccccccccccccc () <
/// ccccccccccccc, ccccccccccccc,
Modified: cfe/trunk/include/clang/Tooling/Inclusions/IncludeStyle.h
URL: http://llvm.org/viewvc/llvm-project/cfe/trunk/include/clang/Tooling/Inclusions/IncludeStyle.h?rev=337899&r1=337898&r2=337899&view=diff
==============================================================================
--- cfe/trunk/include/clang/Tooling/Inclusions/IncludeStyle.h (original)
+++ cfe/trunk/include/clang/Tooling/Inclusions/IncludeStyle.h Wed Jul 25 03:21:47 2018
@@ -67,6 +67,10 @@ struct IncludeStyle {
/// Regular expressions denoting the different ``#include`` categories
/// used for ordering ``#includes``.
///
+ /// `POSIX extended
+ /// <http://pubs.opengroup.org/onlinepubs/9699919799/basedefs/V1_chap09.html>`_
+ /// regular expressions are supported.
+ ///
/// These regular expressions are matched against the filename of an include
/// (including the <> or "") in order. The value belonging to the first
/// matching regular expression is assigned and ``#includes`` are sorted first
@@ -87,6 +91,8 @@ struct IncludeStyle {
/// Priority: 2
/// - Regex: '^(<|"(gtest|gmock|isl|json)/)'
/// Priority: 3
+ /// - Regex: '<[[:alnum:].]+>'
+ /// Priority: 4
/// - Regex: '.*'
/// Priority: 1
/// \endcode
More information about the cfe-commits
mailing list