[llvm] r199620 - Add some wording to the coding standards to say how to indent namespaces
Chandler Carruth
chandlerc at gmail.com
Sun Jan 19 17:40:43 PST 2014
Author: chandlerc
Date: Sun Jan 19 19:40:43 2014
New Revision: 199620
URL: http://llvm.org/viewvc/llvm-project?rev=199620&view=rev
Log:
Add some wording to the coding standards to say how to indent namespaces
(and to mention namespace ending comments). This is based on a quick
discussion on the developer mailing list where there was essentially no
objections to a simple and consistent rule. This should avoid future
debates about whether or not a namespace is "big enough" to indent. It
also matches clang-format's current behavior with LLVM source code which
hasn't really seen any opposition in code reviews that I spot checked.
Modified:
llvm/trunk/docs/CodingStandards.rst
Modified: llvm/trunk/docs/CodingStandards.rst
URL: http://llvm.org/viewvc/llvm-project/llvm/trunk/docs/CodingStandards.rst?rev=199620&r1=199619&r2=199620&view=diff
==============================================================================
--- llvm/trunk/docs/CodingStandards.rst (original)
+++ llvm/trunk/docs/CodingStandards.rst Sun Jan 19 19:40:43 2014
@@ -106,6 +106,24 @@ an algorithm is being implemented or som
to the paper where it is published should be included, as well as any notes or
*gotchas* in the code to watch out for.
+Namespace Markers
+"""""""""""""""""
+
+We don't indent namespaces (see below) and so feel free to add markers to the
+end of a namespace where it helps readabilitily:
+
+.. code-block:: c++
+
+ namespace foo {
+
+ // Lots of code here...
+
+ } // End foo namespace
+
+This isn't required, and in many cases (such as the namespace used for an
+entire file like the 'llvm' namespace in header files) it isn't really useful.
+Use your judgment and add it where it helps.
+
Class overviews
"""""""""""""""
@@ -336,7 +354,33 @@ Indent Code Consistently
Okay, in your first year of programming you were told that indentation is
important. If you didn't believe and internalize this then, now is the time.
-Just do it.
+Just do it. A few cases are called out here that have common alternatives. The
+intent in saying which way to format things is to increase consistency across
+the LLVM codebase.
+
+Namespaces
+""""""""""
+
+A simple rule: don't indent them. Here are examples of well formatted and
+indented namespaces:
+
+.. code-block:: c++
+ namespace llvm {
+
+ namespace foo {
+ class A;
+ class B;
+ }
+
+ namespace {
+ /// \brief Some local class definition.
+ /// ...
+ class Widget {
+ // ... lots of code here ...
+ };
+ } // End anonymous namespace
+
+ } // End llvm namespace
Compiler Issues
---------------
More information about the llvm-commits
mailing list