nodejs/node

[C++ Lint Rule] #define indentation is Inconsistent

Open

#28.605 geöffnet am 9. Juli 2019

Auf GitHub ansehen
 (4 Kommentare) (1 Reaktion) (0 zugewiesene Personen)JavaScript (35.535 Forks)batch import
c++help wantedstale

Repository-Metriken

Stars
 (117.218 Stars)
PR-Merge-Metriken
 (Durchschn. Merge 18T 17h) (219 gemergte PRs in 30 T)

Beschreibung

I was recently going through the source code, trying to familiarize myself with the codebase, and I noticed that there's no consistent rule for how #defines are indented.

For example, in node_main.cc, there's no indentation at all in this #ifdef block.

However, in other places, like node.h, there's a space between the # and the define to indicate a kind of indentation.

There also seems to be inconsistency with how many spaces/tabs should go after the #define variable name and the value, as seen here.

Can we come up with a rule for this and add it to the C++ Style Guide? Maybe even add a rule to the linter?

To get started with the rules we can to define, some questions are:

  1. Should #defines inside of braces be indented?
  2. When should #ifdef X be used vs. if defined(X)?
  3. What should the indentation pattern be for #define/#ifdef/#if defined/#ifndef?

Contributor Guide