1.. title:: clang-tidy - readability-identifier-naming
2
3readability-identifier-naming
4=============================
5
6Checks for identifiers naming style mismatch.
7
8This check will try to enforce coding guidelines on the identifiers naming. It
9supports one of the following casing types and tries to convert from one to
10another if a mismatch is detected
11
12Casing types include:
13
14 - ``lower_case``,
15 - ``UPPER_CASE``,
16 - ``camelBack``,
17 - ``CamelCase``,
18 - ``camel_Snake_Back``,
19 - ``Camel_Snake_Case``,
20 - ``aNy_CasE``.
21
22It also supports a fixed prefix and suffix that will be prepended or appended
23to the identifiers, regardless of the casing.
24
25Many configuration options are available, in order to be able to create
26different rules for different kinds of identifiers. In general, the rules are
27falling back to a more generic rule if the specific case is not configured.
28
29The naming of virtual methods is reported where they occur in the base class,
30but not where they are overridden, as it can't be fixed locally there.
31This also applies for pseudo-override patterns like CRTP.
32
33Options
34-------
35
36The following options are describe below:
37
38 - :option:`AbstractClassCase`, :option:`AbstractClassPrefix`, :option:`AbstractClassSuffix`, :option:`AbstractClassIgnoredRegexp`
39 - :option:`AggressiveDependentMemberLookup`
40 - :option:`ClassCase`, :option:`ClassPrefix`, :option:`ClassSuffix`, :option:`ClassIgnoredRegexp`
41 - :option:`ClassConstantCase`, :option:`ClassConstantPrefix`, :option:`ClassConstantSuffix`, :option:`ClassConstantIgnoredRegexp`
42 - :option:`ClassMemberCase`, :option:`ClassMemberPrefix`, :option:`ClassMemberSuffix`, :option:`ClassMemberIgnoredRegexp`
43 - :option:`ClassMethodCase`, :option:`ClassMethodPrefix`, :option:`ClassMethodSuffix`, :option:`ClassMethodIgnoredRegexp`
44 - :option:`ConstantCase`, :option:`ConstantPrefix`, :option:`ConstantSuffix`, :option:`ConstantIgnoredRegexp`
45 - :option:`ConstantMemberCase`, :option:`ConstantMemberPrefix`, :option:`ConstantMemberSuffix`, :option:`ConstantMemberIgnoredRegexp`
46 - :option:`ConstantParameterCase`, :option:`ConstantParameterPrefix`, :option:`ConstantParameterSuffix`, :option:`ConstantParameterIgnoredRegexp`
47 - :option:`ConstantPointerParameterCase`, :option:`ConstantPointerParameterPrefix`, :option:`ConstantPointerParameterSuffix`, :option:`ConstantPointerParameterIgnoredRegexp`
48 - :option:`ConstexprFunctionCase`, :option:`ConstexprFunctionPrefix`, :option:`ConstexprFunctionSuffix`, :option:`ConstexprFunctionIgnoredRegexp`
49 - :option:`ConstexprMethodCase`, :option:`ConstexprMethodPrefix`, :option:`ConstexprMethodSuffix`, :option:`ConstexprMethodIgnoredRegexp`
50 - :option:`ConstexprVariableCase`, :option:`ConstexprVariablePrefix`, :option:`ConstexprVariableSuffix`, :option:`ConstexprVariableIgnoredRegexp`
51 - :option:`EnumCase`, :option:`EnumPrefix`, :option:`EnumSuffix`, :option:`EnumIgnoredRegexp`
52 - :option:`EnumConstantCase`, :option:`EnumConstantPrefix`, :option:`EnumConstantSuffix`, :option:`EnumConstantIgnoredRegexp`
53 - :option:`FunctionCase`, :option:`FunctionPrefix`, :option:`FunctionSuffix`, :option:`FunctionIgnoredRegexp`
54 - :option:`GetConfigPerFile`
55 - :option:`GlobalConstantCase`, :option:`GlobalConstantPrefix`, :option:`GlobalConstantSuffix`, :option:`GlobalConstantIgnoredRegexp`
56 - :option:`GlobalConstantPointerCase`, :option:`GlobalConstantPointerPrefix`, :option:`GlobalConstantPointerSuffix`, :option:`GlobalConstantPointerIgnoredRegexp`
57 - :option:`GlobalFunctionCase`, :option:`GlobalFunctionPrefix`, :option:`GlobalFunctionSuffix`, :option:`GlobalFunctionIgnoredRegexp`
58 - :option:`GlobalPointerCase`, :option:`GlobalPointerPrefix`, :option:`GlobalPointerSuffix`, :option:`GlobalPointerIgnoredRegexp`
59 - :option:`GlobalVariableCase`, :option:`GlobalVariablePrefix`, :option:`GlobalVariableSuffix`, :option:`GlobalVariableIgnoredRegexp`
60 - :option:`IgnoreMainLikeFunctions`
61 - :option:`InlineNamespaceCase`, :option:`InlineNamespacePrefix`, :option:`InlineNamespaceSuffix`, :option:`InlineNamespaceIgnoredRegexp`
62 - :option:`LocalConstantCase`, :option:`LocalConstantPrefix`, :option:`LocalConstantSuffix`, :option:`LocalConstantIgnoredRegexp`
63 - :option:`LocalConstantPointerCase`, :option:`LocalConstantPointerPrefix`, :option:`LocalConstantPointerSuffix`, :option:`LocalConstantPointerIgnoredRegexp`
64 - :option:`LocalPointerCase`, :option:`LocalPointerPrefix`, :option:`LocalPointerSuffix`, :option:`LocalPointerIgnoredRegexp`
65 - :option:`LocalVariableCase`, :option:`LocalVariablePrefix`, :option:`LocalVariableSuffix`, :option:`LocalVariableIgnoredRegexp`
66 - :option:`MacroDefinitionCase`, :option:`MacroDefinitionPrefix`, :option:`MacroDefinitionSuffix`, :option:`MacroDefinitionIgnoredRegexp`
67 - :option:`MemberCase`, :option:`MemberPrefix`, :option:`MemberSuffix`, :option:`MemberIgnoredRegexp`
68 - :option:`MethodCase`, :option:`MethodPrefix`, :option:`MethodSuffix`, :option:`MethodIgnoredRegexp`
69 - :option:`NamespaceCase`, :option:`NamespacePrefix`, :option:`NamespaceSuffix`, :option:`NamespaceIgnoredRegexp`
70 - :option:`ParameterCase`, :option:`ParameterPrefix`, :option:`ParameterSuffix`, :option:`ParameterIgnoredRegexp`
71 - :option:`ParameterPackCase`, :option:`ParameterPackPrefix`, :option:`ParameterPackSuffix`, :option:`ParameterPackIgnoredRegexp`
72 - :option:`PointerParameterCase`, :option:`PointerParameterPrefix`, :option:`PointerParameterSuffix`, :option:`PointerParameterIgnoredRegexp`
73 - :option:`PrivateMemberCase`, :option:`PrivateMemberPrefix`, :option:`PrivateMemberSuffix`, :option:`PrivateMemberIgnoredRegexp`
74 - :option:`PrivateMethodCase`, :option:`PrivateMethodPrefix`, :option:`PrivateMethodSuffix`, :option:`PrivateMethodIgnoredRegexp`
75 - :option:`ProtectedMemberCase`, :option:`ProtectedMemberPrefix`, :option:`ProtectedMemberSuffix`, :option:`ProtectedMemberIgnoredRegexp`
76 - :option:`ProtectedMethodCase`, :option:`ProtectedMethodPrefix`, :option:`ProtectedMethodSuffix`, :option:`ProtectedMethodIgnoredRegexp`
77 - :option:`PublicMemberCase`, :option:`PublicMemberPrefix`, :option:`PublicMemberSuffix`, :option:`PublicMemberIgnoredRegexp`
78 - :option:`PublicMethodCase`, :option:`PublicMethodPrefix`, :option:`PublicMethodSuffix`, :option:`PublicMethodIgnoredRegexp`
79 - :option:`ScopedEnumConstantCase`, :option:`ScopedEnumConstantPrefix`, :option:`ScopedEnumConstantSuffix`, :option:`ScopedEnumConstantIgnoredRegexp`
80 - :option:`StaticConstantCase`, :option:`StaticConstantPrefix`, :option:`StaticConstantSuffix`, :option:`StaticConstantIgnoredRegexp`
81 - :option:`StaticVariableCase`, :option:`StaticVariablePrefix`, :option:`StaticVariableSuffix`, :option:`StaticVariableIgnoredRegexp`
82 - :option:`StructCase`, :option:`StructPrefix`, :option:`StructSuffix`, :option:`StructIgnoredRegexp`
83 - :option:`TemplateParameterCase`, :option:`TemplateParameterPrefix`, :option:`TemplateParameterSuffix`, :option:`TemplateParameterIgnoredRegexp`
84 - :option:`TemplateTemplateParameterCase`, :option:`TemplateTemplateParameterPrefix`, :option:`TemplateTemplateParameterSuffix`, :option:`TemplateTemplateParameterIgnoredRegexp`
85 - :option:`TypeAliasCase`, :option:`TypeAliasPrefix`, :option:`TypeAliasSuffix`, :option:`TypeAliasIgnoredRegexp`
86 - :option:`TypedefCase`, :option:`TypedefPrefix`, :option:`TypedefSuffix`, :option:`TypedefIgnoredRegexp`
87 - :option:`TypeTemplateParameterCase`, :option:`TypeTemplateParameterPrefix`, :option:`TypeTemplateParameterSuffix`, :option:`TypeTemplateParameterIgnoredRegexp`
88 - :option:`UnionCase`, :option:`UnionPrefix`, :option:`UnionSuffix`, :option:`UnionIgnoredRegexp`
89 - :option:`ValueTemplateParameterCase`, :option:`ValueTemplateParameterPrefix`, :option:`ValueTemplateParameterSuffix`, :option:`ValueTemplateParameterIgnoredRegexp`
90 - :option:`VariableCase`, :option:`VariablePrefix`, :option:`VariableSuffix`, :option:`VariableIgnoredRegexp`
91 - :option:`VirtualMethodCase`, :option:`VirtualMethodPrefix`, :option:`VirtualMethodSuffix`, :option:`VirtualMethodIgnoredRegexp`
92
93.. option:: AbstractClassCase
94
95    When defined, the check will ensure abstract class names conform to the
96    selected casing.
97
98.. option:: AbstractClassPrefix
99
100    When defined, the check will ensure abstract class names will add the
101    prefixed with the given value (regardless of casing).
102
103.. option:: AbstractClassIgnoredRegexp
104
105    Identifier naming checks won't be enforced for abstract class names
106    matching this regular expression.
107
108.. option:: AbstractClassSuffix
109
110    When defined, the check will ensure abstract class names will add the
111    suffix with the given value (regardless of casing).
112
113For example using values of:
114
115   - AbstractClassCase of ``lower_case``
116   - AbstractClassPrefix of ``pre_``
117   - AbstractClassSuffix of ``_post``
118
119Identifies and/or transforms abstract class names as follows:
120
121Before:
122
123.. code-block:: c++
124
125    class ABSTRACT_CLASS {
126    public:
127      ABSTRACT_CLASS();
128    };
129
130After:
131
132.. code-block:: c++
133
134    class pre_abstract_class_post {
135    public:
136      pre_abstract_class_post();
137    };
138
139.. option:: AggressiveDependentMemberLookup
140
141    When set to `true` the check will look in dependent base classes for dependent
142    member references that need changing. This can lead to errors with template
143    specializations so the default value is `false`.
144
145For example using values of:
146
147   - ClassMemberCase of ``lower_case``
148
149Before:
150
151.. code-block:: c++
152
153    template <typename T>
154    struct Base {
155      T BadNamedMember;
156    };
157
158    template <typename T>
159    struct Derived : Base<T> {
160      void reset() {
161        this->BadNamedMember = 0;
162      }
163    };
164
165After if AggressiveDependentMemberLookup is `false`:
166
167.. code-block:: c++
168
169    template <typename T>
170    struct Base {
171      T bad_named_member;
172    };
173
174    template <typename T>
175    struct Derived : Base<T> {
176      void reset() {
177        this->BadNamedMember = 0;
178      }
179    };
180
181After if AggressiveDependentMemberLookup is `true`:
182
183.. code-block:: c++
184
185    template <typename T>
186    struct Base {
187      T bad_named_member;
188    };
189
190    template <typename T>
191    struct Derived : Base<T> {
192      void reset() {
193        this->bad_named_member = 0;
194      }
195    };
196
197.. option:: ClassCase
198
199    When defined, the check will ensure class names conform to the
200    selected casing.
201
202.. option:: ClassPrefix
203
204    When defined, the check will ensure class names will add the
205    prefixed with the given value (regardless of casing).
206
207.. option:: ClassIgnoredRegexp
208
209    Identifier naming checks won't be enforced for class names matching
210    this regular expression.
211
212.. option:: ClassSuffix
213
214    When defined, the check will ensure class names will add the
215    suffix with the given value (regardless of casing).
216
217For example using values of:
218
219   - ClassCase of ``lower_case``
220   - ClassPrefix of ``pre_``
221   - ClassSuffix of ``_post``
222
223Identifies and/or transforms class names as follows:
224
225Before:
226
227.. code-block:: c++
228
229    class FOO {
230    public:
231      FOO();
232      ~FOO();
233    };
234
235After:
236
237.. code-block:: c++
238
239    class pre_foo_post {
240    public:
241      pre_foo_post();
242      ~pre_foo_post();
243    };
244
245.. option:: ClassConstantCase
246
247    When defined, the check will ensure class constant names conform to the
248    selected casing.
249
250.. option:: ClassConstantPrefix
251
252    When defined, the check will ensure class constant names will add the
253    prefixed with the given value (regardless of casing).
254
255.. option:: ClassConstantIgnoredRegexp
256
257    Identifier naming checks won't be enforced for class constant names
258    matching this regular expression.
259
260.. option:: ClassConstantSuffix
261
262    When defined, the check will ensure class constant names will add the
263    suffix with the given value (regardless of casing).
264
265For example using values of:
266
267   - ClassConstantCase of ``lower_case``
268   - ClassConstantPrefix of ``pre_``
269   - ClassConstantSuffix of ``_post``
270
271Identifies and/or transforms class constant names as follows:
272
273Before:
274
275.. code-block:: c++
276
277    class FOO {
278    public:
279      static const int CLASS_CONSTANT;
280    };
281
282After:
283
284.. code-block:: c++
285
286    class FOO {
287    public:
288      static const int pre_class_constant_post;
289    };
290
291.. option:: ClassMemberCase
292
293    When defined, the check will ensure class member names conform to the
294    selected casing.
295
296.. option:: ClassMemberPrefix
297
298    When defined, the check will ensure class member names will add the
299    prefixed with the given value (regardless of casing).
300
301.. option:: ClassMemberIgnoredRegexp
302
303    Identifier naming checks won't be enforced for class member names
304    matching this regular expression.
305
306.. option:: ClassMemberSuffix
307
308    When defined, the check will ensure class member names will add the
309    suffix with the given value (regardless of casing).
310
311For example using values of:
312
313   - ClassMemberCase of ``lower_case``
314   - ClassMemberPrefix of ``pre_``
315   - ClassMemberSuffix of ``_post``
316
317Identifies and/or transforms class member names as follows:
318
319Before:
320
321.. code-block:: c++
322
323    class FOO {
324    public:
325      static int CLASS_CONSTANT;
326    };
327
328After:
329
330.. code-block:: c++
331
332    class FOO {
333    public:
334      static int pre_class_constant_post;
335    };
336
337.. option:: ClassMethodCase
338
339    When defined, the check will ensure class method names conform to the
340    selected casing.
341
342.. option:: ClassMethodPrefix
343
344    When defined, the check will ensure class method names will add the
345    prefixed with the given value (regardless of casing).
346
347.. option:: ClassMethodIgnoredRegexp
348
349    Identifier naming checks won't be enforced for class method names
350    matching this regular expression.
351
352.. option:: ClassMethodSuffix
353
354    When defined, the check will ensure class method names will add the
355    suffix with the given value (regardless of casing).
356
357For example using values of:
358
359   - ClassMethodCase of ``lower_case``
360   - ClassMethodPrefix of ``pre_``
361   - ClassMethodSuffix of ``_post``
362
363Identifies and/or transforms class method names as follows:
364
365Before:
366
367.. code-block:: c++
368
369    class FOO {
370    public:
371      int CLASS_MEMBER();
372    };
373
374After:
375
376.. code-block:: c++
377
378    class FOO {
379    public:
380      int pre_class_member_post();
381    };
382
383.. option:: ConstantCase
384
385    When defined, the check will ensure constant names conform to the
386    selected casing.
387
388.. option:: ConstantPrefix
389
390    When defined, the check will ensure constant names will add the
391    prefixed with the given value (regardless of casing).
392
393.. option:: ConstantIgnoredRegexp
394
395    Identifier naming checks won't be enforced for constant names
396    matching this regular expression.
397
398.. option:: ConstantSuffix
399
400    When defined, the check will ensure constant names will add the
401    suffix with the given value (regardless of casing).
402
403For example using values of:
404
405   - ConstantCase of ``lower_case``
406   - ConstantPrefix of ``pre_``
407   - ConstantSuffix of ``_post``
408
409Identifies and/or transforms constant names as follows:
410
411Before:
412
413.. code-block:: c++
414
415    void function() { unsigned const MyConst_array[] = {1, 2, 3}; }
416
417After:
418
419.. code-block:: c++
420
421    void function() { unsigned const pre_myconst_array_post[] = {1, 2, 3}; }
422
423.. option:: ConstantMemberCase
424
425    When defined, the check will ensure constant member names conform to the
426    selected casing.
427
428.. option:: ConstantMemberPrefix
429
430    When defined, the check will ensure constant member names will add the
431    prefixed with the given value (regardless of casing).
432
433.. option:: ConstantMemberIgnoredRegexp
434
435    Identifier naming checks won't be enforced for constant member names
436    matching this regular expression.
437
438.. option:: ConstantMemberSuffix
439
440    When defined, the check will ensure constant member names will add the
441    suffix with the given value (regardless of casing).
442
443For example using values of:
444
445   - ConstantMemberCase of ``lower_case``
446   - ConstantMemberPrefix of ``pre_``
447   - ConstantMemberSuffix of ``_post``
448
449Identifies and/or transforms constant member names as follows:
450
451Before:
452
453.. code-block:: c++
454
455    class Foo {
456      char const MY_ConstMember_string[4] = "123";
457    }
458
459After:
460
461.. code-block:: c++
462
463    class Foo {
464      char const pre_my_constmember_string_post[4] = "123";
465    }
466
467.. option:: ConstantParameterCase
468
469    When defined, the check will ensure constant parameter names conform to the
470    selected casing.
471
472.. option:: ConstantParameterPrefix
473
474    When defined, the check will ensure constant parameter names will add the
475    prefixed with the given value (regardless of casing).
476
477.. option:: ConstantParameterIgnoredRegexp
478
479    Identifier naming checks won't be enforced for constant parameter names
480    matching this regular expression.
481
482.. option:: ConstantParameterSuffix
483
484    When defined, the check will ensure constant parameter names will add the
485    suffix with the given value (regardless of casing).
486
487For example using values of:
488
489   - ConstantParameterCase of ``lower_case``
490   - ConstantParameterPrefix of ``pre_``
491   - ConstantParameterSuffix of ``_post``
492
493Identifies and/or transforms constant parameter names as follows:
494
495Before:
496
497.. code-block:: c++
498
499    void GLOBAL_FUNCTION(int PARAMETER_1, int const CONST_parameter);
500
501After:
502
503.. code-block:: c++
504
505    void GLOBAL_FUNCTION(int PARAMETER_1, int const pre_const_parameter_post);
506
507.. option:: ConstantPointerParameterCase
508
509    When defined, the check will ensure constant pointer parameter names conform to the
510    selected casing.
511
512.. option:: ConstantPointerParameterPrefix
513
514    When defined, the check will ensure constant pointer parameter names will add the
515    prefixed with the given value (regardless of casing).
516
517.. option:: ConstantPointerParameterIgnoredRegexp
518
519    Identifier naming checks won't be enforced for constant pointer parameter
520    names matching this regular expression.
521
522.. option:: ConstantPointerParameterSuffix
523
524    When defined, the check will ensure constant pointer parameter names will add the
525    suffix with the given value (regardless of casing).
526
527For example using values of:
528
529   - ConstantPointerParameterCase of ``lower_case``
530   - ConstantPointerParameterPrefix of ``pre_``
531   - ConstantPointerParameterSuffix of ``_post``
532
533Identifies and/or transforms constant pointer parameter names as follows:
534
535Before:
536
537.. code-block:: c++
538
539    void GLOBAL_FUNCTION(int const *CONST_parameter);
540
541After:
542
543.. code-block:: c++
544
545    void GLOBAL_FUNCTION(int const *pre_const_parameter_post);
546
547.. option:: ConstexprFunctionCase
548
549    When defined, the check will ensure constexpr function names conform to the
550    selected casing.
551
552.. option:: ConstexprFunctionPrefix
553
554    When defined, the check will ensure constexpr function names will add the
555    prefixed with the given value (regardless of casing).
556
557.. option:: ConstexprFunctionIgnoredRegexp
558
559    Identifier naming checks won't be enforced for constexpr function names
560    matching this regular expression.
561
562.. option:: ConstexprFunctionSuffix
563
564    When defined, the check will ensure constexpr function names will add the
565    suffix with the given value (regardless of casing).
566
567For example using values of:
568
569   - ConstexprFunctionCase of ``lower_case``
570   - ConstexprFunctionPrefix of ``pre_``
571   - ConstexprFunctionSuffix of ``_post``
572
573Identifies and/or transforms constexpr function names as follows:
574
575Before:
576
577.. code-block:: c++
578
579    constexpr int CE_function() { return 3; }
580
581After:
582
583.. code-block:: c++
584
585    constexpr int pre_ce_function_post() { return 3; }
586
587.. option:: ConstexprMethodCase
588
589    When defined, the check will ensure constexpr method names conform to the
590    selected casing.
591
592.. option:: ConstexprMethodPrefix
593
594    When defined, the check will ensure constexpr method names will add the
595    prefixed with the given value (regardless of casing).
596
597.. option:: ConstexprMethodIgnoredRegexp
598
599    Identifier naming checks won't be enforced for constexpr method names
600    matching this regular expression.
601
602.. option:: ConstexprMethodSuffix
603
604    When defined, the check will ensure constexpr method names will add the
605    suffix with the given value (regardless of casing).
606
607For example using values of:
608
609   - ConstexprMethodCase of ``lower_case``
610   - ConstexprMethodPrefix of ``pre_``
611   - ConstexprMethodSuffix of ``_post``
612
613Identifies and/or transforms constexpr method names as follows:
614
615Before:
616
617.. code-block:: c++
618
619    class Foo {
620    public:
621      constexpr int CST_expr_Method() { return 2; }
622    }
623
624After:
625
626.. code-block:: c++
627
628    class Foo {
629    public:
630      constexpr int pre_cst_expr_method_post() { return 2; }
631    }
632
633.. option:: ConstexprVariableCase
634
635    When defined, the check will ensure constexpr variable names conform to the
636    selected casing.
637
638.. option:: ConstexprVariablePrefix
639
640    When defined, the check will ensure constexpr variable names will add the
641    prefixed with the given value (regardless of casing).
642
643.. option:: ConstexprVariableIgnoredRegexp
644
645    Identifier naming checks won't be enforced for constexpr variable names
646    matching this regular expression.
647
648.. option:: ConstexprVariableSuffix
649
650    When defined, the check will ensure constexpr variable names will add the
651    suffix with the given value (regardless of casing).
652
653For example using values of:
654
655   - ConstexprVariableCase of ``lower_case``
656   - ConstexprVariablePrefix of ``pre_``
657   - ConstexprVariableSuffix of ``_post``
658
659Identifies and/or transforms constexpr variable names as follows:
660
661Before:
662
663.. code-block:: c++
664
665    constexpr int ConstExpr_variable = MyConstant;
666
667After:
668
669.. code-block:: c++
670
671    constexpr int pre_constexpr_variable_post = MyConstant;
672
673.. option:: EnumCase
674
675    When defined, the check will ensure enumeration names conform to the
676    selected casing.
677
678.. option:: EnumPrefix
679
680    When defined, the check will ensure enumeration names will add the
681    prefixed with the given value (regardless of casing).
682
683.. option:: EnumIgnoredRegexp
684
685    Identifier naming checks won't be enforced for enumeration names
686    matching this regular expression.
687
688.. option:: EnumSuffix
689
690    When defined, the check will ensure enumeration names will add the
691    suffix with the given value (regardless of casing).
692
693For example using values of:
694
695   - EnumCase of ``lower_case``
696   - EnumPrefix of ``pre_``
697   - EnumSuffix of ``_post``
698
699Identifies and/or transforms enumeration names as follows:
700
701Before:
702
703.. code-block:: c++
704
705    enum FOO { One, Two, Three };
706
707After:
708
709.. code-block:: c++
710
711    enum pre_foo_post { One, Two, Three };
712
713.. option:: EnumConstantCase
714
715    When defined, the check will ensure enumeration constant names conform to the
716    selected casing.
717
718.. option:: EnumConstantPrefix
719
720    When defined, the check will ensure enumeration constant names will add the
721    prefixed with the given value (regardless of casing).
722
723.. option:: EnumConstantIgnoredRegexp
724
725    Identifier naming checks won't be enforced for enumeration constant names
726    matching this regular expression.
727
728.. option:: EnumConstantSuffix
729
730    When defined, the check will ensure enumeration constant names will add the
731    suffix with the given value (regardless of casing).
732
733For example using values of:
734
735   - EnumConstantCase of ``lower_case``
736   - EnumConstantPrefix of ``pre_``
737   - EnumConstantSuffix of ``_post``
738
739Identifies and/or transforms enumeration constant names as follows:
740
741Before:
742
743.. code-block:: c++
744
745    enum FOO { One, Two, Three };
746
747After:
748
749.. code-block:: c++
750
751    enum FOO { pre_One_post, pre_Two_post, pre_Three_post };
752
753.. option:: FunctionCase
754
755    When defined, the check will ensure function names conform to the
756    selected casing.
757
758.. option:: FunctionPrefix
759
760    When defined, the check will ensure function names will add the
761    prefixed with the given value (regardless of casing).
762
763.. option:: FunctionIgnoredRegexp
764
765    Identifier naming checks won't be enforced for function names
766    matching this regular expression.
767
768.. option:: FunctionSuffix
769
770    When defined, the check will ensure function names will add the
771    suffix with the given value (regardless of casing).
772
773For example using values of:
774
775   - FunctionCase of ``lower_case``
776   - FunctionPrefix of ``pre_``
777   - FunctionSuffix of ``_post``
778
779Identifies and/or transforms function names as follows:
780
781Before:
782
783.. code-block:: c++
784
785    char MY_Function_string();
786
787After:
788
789.. code-block:: c++
790
791    char pre_my_function_string_post();
792
793.. option:: GetConfigPerFile
794
795    When `true` the check will look for the configuration for where an
796    identifier is declared. Useful for when included header files use a
797    different style.
798    Default value is `true`.
799
800.. option:: GlobalConstantCase
801
802    When defined, the check will ensure global constant names conform to the
803    selected casing.
804
805.. option:: GlobalConstantPrefix
806
807    When defined, the check will ensure global constant names will add the
808    prefixed with the given value (regardless of casing).
809
810.. option:: GlobalConstantIgnoredRegexp
811
812    Identifier naming checks won't be enforced for global constant names
813    matching this regular expression.
814
815.. option:: GlobalConstantSuffix
816
817    When defined, the check will ensure global constant names will add the
818    suffix with the given value (regardless of casing).
819
820For example using values of:
821
822   - GlobalConstantCase of ``lower_case``
823   - GlobalConstantPrefix of ``pre_``
824   - GlobalConstantSuffix of ``_post``
825
826Identifies and/or transforms global constant names as follows:
827
828Before:
829
830.. code-block:: c++
831
832    unsigned const MyConstGlobal_array[] = {1, 2, 3};
833
834After:
835
836.. code-block:: c++
837
838    unsigned const pre_myconstglobal_array_post[] = {1, 2, 3};
839
840.. option:: GlobalConstantPointerCase
841
842    When defined, the check will ensure global constant pointer names conform to the
843    selected casing.
844
845.. option:: GlobalConstantPointerPrefix
846
847    When defined, the check will ensure global constant pointer names will add the
848    prefixed with the given value (regardless of casing).
849
850.. option:: GlobalConstantPointerIgnoredRegexp
851
852    Identifier naming checks won't be enforced for global constant pointer
853    names matching this regular expression.
854
855.. option:: GlobalConstantPointerSuffix
856
857    When defined, the check will ensure global constant pointer names will add the
858    suffix with the given value (regardless of casing).
859
860For example using values of:
861
862   - GlobalConstantPointerCase of ``lower_case``
863   - GlobalConstantPointerPrefix of ``pre_``
864   - GlobalConstantPointerSuffix of ``_post``
865
866Identifies and/or transforms global constant pointer names as follows:
867
868Before:
869
870.. code-block:: c++
871
872    int *const MyConstantGlobalPointer = nullptr;
873
874After:
875
876.. code-block:: c++
877
878    int *const pre_myconstantglobalpointer_post = nullptr;
879
880.. option:: GlobalFunctionCase
881
882    When defined, the check will ensure global function names conform to the
883    selected casing.
884
885.. option:: GlobalFunctionPrefix
886
887    When defined, the check will ensure global function names will add the
888    prefixed with the given value (regardless of casing).
889
890.. option:: GlobalFunctionIgnoredRegexp
891
892    Identifier naming checks won't be enforced for global function names
893    matching this regular expression.
894
895.. option:: GlobalFunctionSuffix
896
897    When defined, the check will ensure global function names will add the
898    suffix with the given value (regardless of casing).
899
900For example using values of:
901
902   - GlobalFunctionCase of ``lower_case``
903   - GlobalFunctionPrefix of ``pre_``
904   - GlobalFunctionSuffix of ``_post``
905
906Identifies and/or transforms global function names as follows:
907
908Before:
909
910.. code-block:: c++
911
912    void GLOBAL_FUNCTION(int PARAMETER_1, int const CONST_parameter);
913
914After:
915
916.. code-block:: c++
917
918    void pre_global_function_post(int PARAMETER_1, int const CONST_parameter);
919
920.. option:: GlobalPointerCase
921
922    When defined, the check will ensure global pointer names conform to the
923    selected casing.
924
925.. option:: GlobalPointerPrefix
926
927    When defined, the check will ensure global pointer names will add the
928    prefixed with the given value (regardless of casing).
929
930.. option:: GlobalPointerIgnoredRegexp
931
932    Identifier naming checks won't be enforced for global pointer names
933    matching this regular expression.
934
935.. option:: GlobalPointerSuffix
936
937    When defined, the check will ensure global pointer names will add the
938    suffix with the given value (regardless of casing).
939
940For example using values of:
941
942   - GlobalPointerCase of ``lower_case``
943   - GlobalPointerPrefix of ``pre_``
944   - GlobalPointerSuffix of ``_post``
945
946Identifies and/or transforms global pointer names as follows:
947
948Before:
949
950.. code-block:: c++
951
952    int *GLOBAL3;
953
954After:
955
956.. code-block:: c++
957
958    int *pre_global3_post;
959
960.. option:: GlobalVariableCase
961
962    When defined, the check will ensure global variable names conform to the
963    selected casing.
964
965.. option:: GlobalVariablePrefix
966
967    When defined, the check will ensure global variable names will add the
968    prefixed with the given value (regardless of casing).
969
970.. option:: GlobalVariableIgnoredRegexp
971
972    Identifier naming checks won't be enforced for global variable names
973    matching this regular expression.
974
975.. option:: GlobalVariableSuffix
976
977    When defined, the check will ensure global variable names will add the
978    suffix with the given value (regardless of casing).
979
980For example using values of:
981
982   - GlobalVariableCase of ``lower_case``
983   - GlobalVariablePrefix of ``pre_``
984   - GlobalVariableSuffix of ``_post``
985
986Identifies and/or transforms global variable names as follows:
987
988Before:
989
990.. code-block:: c++
991
992    int GLOBAL3;
993
994After:
995
996.. code-block:: c++
997
998    int pre_global3_post;
999
1000.. option:: IgnoreMainLikeFunctions
1001
1002    When set to `true` functions that have a similar signature to ``main`` or
1003    ``wmain`` won't enforce checks on the names of their parameters.
1004    Default value is `false`.
1005
1006.. option:: InlineNamespaceCase
1007
1008    When defined, the check will ensure inline namespaces names conform to the
1009    selected casing.
1010
1011.. option:: InlineNamespacePrefix
1012
1013    When defined, the check will ensure inline namespaces names will add the
1014    prefixed with the given value (regardless of casing).
1015
1016.. option:: InlineNamespaceIgnoredRegexp
1017
1018    Identifier naming checks won't be enforced for inline namespaces names
1019    matching this regular expression.
1020
1021.. option:: InlineNamespaceSuffix
1022
1023    When defined, the check will ensure inline namespaces names will add the
1024    suffix with the given value (regardless of casing).
1025
1026For example using values of:
1027
1028   - InlineNamespaceCase of ``lower_case``
1029   - InlineNamespacePrefix of ``pre_``
1030   - InlineNamespaceSuffix of ``_post``
1031
1032Identifies and/or transforms inline namespaces names as follows:
1033
1034Before:
1035
1036.. code-block:: c++
1037
1038    namespace FOO_NS {
1039    inline namespace InlineNamespace {
1040    ...
1041    }
1042    } // namespace FOO_NS
1043
1044After:
1045
1046.. code-block:: c++
1047
1048    namespace FOO_NS {
1049    inline namespace pre_inlinenamespace_post {
1050    ...
1051    }
1052    } // namespace FOO_NS
1053
1054.. option:: LocalConstantCase
1055
1056    When defined, the check will ensure local constant names conform to the
1057    selected casing.
1058
1059.. option:: LocalConstantPrefix
1060
1061    When defined, the check will ensure local constant names will add the
1062    prefixed with the given value (regardless of casing).
1063
1064.. option:: LocalConstantIgnoredRegexp
1065
1066    Identifier naming checks won't be enforced for local constant names
1067    matching this regular expression.
1068
1069.. option:: LocalConstantSuffix
1070
1071    When defined, the check will ensure local constant names will add the
1072    suffix with the given value (regardless of casing).
1073
1074For example using values of:
1075
1076   - LocalConstantCase of ``lower_case``
1077   - LocalConstantPrefix of ``pre_``
1078   - LocalConstantSuffix of ``_post``
1079
1080Identifies and/or transforms local constant names as follows:
1081
1082Before:
1083
1084.. code-block:: c++
1085
1086    void foo() { int const local_Constant = 3; }
1087
1088After:
1089
1090.. code-block:: c++
1091
1092    void foo() { int const pre_local_constant_post = 3; }
1093
1094.. option:: LocalConstantPointerCase
1095
1096    When defined, the check will ensure local constant pointer names conform to the
1097    selected casing.
1098
1099.. option:: LocalConstantPointerPrefix
1100
1101    When defined, the check will ensure local constant pointer names will add the
1102    prefixed with the given value (regardless of casing).
1103
1104.. option:: LocalConstantPointerIgnoredRegexp
1105
1106    Identifier naming checks won't be enforced for local constant pointer names
1107    matching this regular expression.
1108
1109.. option:: LocalConstantPointerSuffix
1110
1111    When defined, the check will ensure local constant pointer names will add the
1112    suffix with the given value (regardless of casing).
1113
1114For example using values of:
1115
1116   - LocalConstantPointerCase of ``lower_case``
1117   - LocalConstantPointerPrefix of ``pre_``
1118   - LocalConstantPointerSuffix of ``_post``
1119
1120Identifies and/or transforms local constant pointer names as follows:
1121
1122Before:
1123
1124.. code-block:: c++
1125
1126    void foo() { int const *local_Constant = 3; }
1127
1128After:
1129
1130.. code-block:: c++
1131
1132    void foo() { int const *pre_local_constant_post = 3; }
1133
1134.. option:: LocalPointerCase
1135
1136    When defined, the check will ensure local pointer names conform to the
1137    selected casing.
1138
1139.. option:: LocalPointerPrefix
1140
1141    When defined, the check will ensure local pointer names will add the
1142    prefixed with the given value (regardless of casing).
1143
1144.. option:: LocalPointerIgnoredRegexp
1145
1146    Identifier naming checks won't be enforced for local pointer names
1147    matching this regular expression.
1148
1149.. option:: LocalPointerSuffix
1150
1151    When defined, the check will ensure local pointer names will add the
1152    suffix with the given value (regardless of casing).
1153
1154For example using values of:
1155
1156   - LocalPointerCase of ``lower_case``
1157   - LocalPointerPrefix of ``pre_``
1158   - LocalPointerSuffix of ``_post``
1159
1160Identifies and/or transforms local pointer names as follows:
1161
1162Before:
1163
1164.. code-block:: c++
1165
1166    void foo() { int *local_Constant; }
1167
1168After:
1169
1170.. code-block:: c++
1171
1172    void foo() { int *pre_local_constant_post; }
1173
1174.. option:: LocalVariableCase
1175
1176    When defined, the check will ensure local variable names conform to the
1177    selected casing.
1178
1179.. option:: LocalVariablePrefix
1180
1181    When defined, the check will ensure local variable names will add the
1182    prefixed with the given value (regardless of casing).
1183
1184.. option:: LocalVariableIgnoredRegexp
1185
1186    Identifier naming checks won't be enforced for local variable names
1187    matching this regular expression.
1188
1189For example using values of:
1190
1191   - LocalVariableCase of ``CamelCase``
1192   - LocalVariableIgnoredRegexp of ``\w{1,2}``
1193
1194Will exclude variables with a length less than or equal to 2 from the
1195camel case check applied to other variables.
1196
1197.. option:: LocalVariableSuffix
1198
1199    When defined, the check will ensure local variable names will add the
1200    suffix with the given value (regardless of casing).
1201
1202For example using values of:
1203
1204   - LocalVariableCase of ``lower_case``
1205   - LocalVariablePrefix of ``pre_``
1206   - LocalVariableSuffix of ``_post``
1207
1208Identifies and/or transforms local variable names as follows:
1209
1210Before:
1211
1212.. code-block:: c++
1213
1214    void foo() { int local_Constant; }
1215
1216After:
1217
1218.. code-block:: c++
1219
1220    void foo() { int pre_local_constant_post; }
1221
1222.. option:: MacroDefinitionCase
1223
1224    When defined, the check will ensure macro definitions conform to the
1225    selected casing.
1226
1227.. option:: MacroDefinitionPrefix
1228
1229    When defined, the check will ensure macro definitions will add the
1230    prefixed with the given value (regardless of casing).
1231
1232.. option:: MacroDefinitionIgnoredRegexp
1233
1234    Identifier naming checks won't be enforced for macro definitions
1235    matching this regular expression.
1236
1237.. option:: MacroDefinitionSuffix
1238
1239    When defined, the check will ensure macro definitions will add the
1240    suffix with the given value (regardless of casing).
1241
1242For example using values of:
1243
1244   - MacroDefinitionCase of ``lower_case``
1245   - MacroDefinitionPrefix of ``pre_``
1246   - MacroDefinitionSuffix of ``_post``
1247
1248Identifies and/or transforms macro definitions as follows:
1249
1250Before:
1251
1252.. code-block:: c
1253
1254    #define MY_MacroDefinition
1255
1256After:
1257
1258.. code-block:: c
1259
1260    #define pre_my_macro_definition_post
1261
1262Note: This will not warn on builtin macros or macros defined on the command line
1263using the ``-D`` flag.
1264
1265.. option:: MemberCase
1266
1267    When defined, the check will ensure member names conform to the
1268    selected casing.
1269
1270.. option:: MemberPrefix
1271
1272    When defined, the check will ensure member names will add the
1273    prefixed with the given value (regardless of casing).
1274
1275.. option:: MemberIgnoredRegexp
1276
1277    Identifier naming checks won't be enforced for member names
1278    matching this regular expression.
1279
1280.. option:: MemberSuffix
1281
1282    When defined, the check will ensure member names will add the
1283    suffix with the given value (regardless of casing).
1284
1285For example using values of:
1286
1287   - MemberCase of ``lower_case``
1288   - MemberPrefix of ``pre_``
1289   - MemberSuffix of ``_post``
1290
1291Identifies and/or transforms member names as follows:
1292
1293Before:
1294
1295.. code-block:: c++
1296
1297    class Foo {
1298      char MY_ConstMember_string[4];
1299    }
1300
1301After:
1302
1303.. code-block:: c++
1304
1305    class Foo {
1306      char pre_my_constmember_string_post[4];
1307    }
1308
1309.. option:: MethodCase
1310
1311    When defined, the check will ensure method names conform to the
1312    selected casing.
1313
1314.. option:: MethodPrefix
1315
1316    When defined, the check will ensure method names will add the
1317    prefixed with the given value (regardless of casing).
1318
1319.. option:: MethodIgnoredRegexp
1320
1321    Identifier naming checks won't be enforced for method names
1322    matching this regular expression.
1323
1324.. option:: MethodSuffix
1325
1326    When defined, the check will ensure method names will add the
1327    suffix with the given value (regardless of casing).
1328
1329For example using values of:
1330
1331   - MethodCase of ``lower_case``
1332   - MethodPrefix of ``pre_``
1333   - MethodSuffix of ``_post``
1334
1335Identifies and/or transforms method names as follows:
1336
1337Before:
1338
1339.. code-block:: c++
1340
1341    class Foo {
1342      char MY_Method_string();
1343    }
1344
1345After:
1346
1347.. code-block:: c++
1348
1349    class Foo {
1350      char pre_my_method_string_post();
1351    }
1352
1353.. option:: NamespaceCase
1354
1355    When defined, the check will ensure namespace names conform to the
1356    selected casing.
1357
1358.. option:: NamespacePrefix
1359
1360    When defined, the check will ensure namespace names will add the
1361    prefixed with the given value (regardless of casing).
1362
1363.. option:: NamespaceIgnoredRegexp
1364
1365    Identifier naming checks won't be enforced for namespace names
1366    matching this regular expression.
1367
1368.. option:: NamespaceSuffix
1369
1370    When defined, the check will ensure namespace names will add the
1371    suffix with the given value (regardless of casing).
1372
1373For example using values of:
1374
1375   - NamespaceCase of ``lower_case``
1376   - NamespacePrefix of ``pre_``
1377   - NamespaceSuffix of ``_post``
1378
1379Identifies and/or transforms namespace names as follows:
1380
1381Before:
1382
1383.. code-block:: c++
1384
1385    namespace FOO_NS {
1386    ...
1387    }
1388
1389After:
1390
1391.. code-block:: c++
1392
1393    namespace pre_foo_ns_post {
1394    ...
1395    }
1396
1397.. option:: ParameterCase
1398
1399    When defined, the check will ensure parameter names conform to the
1400    selected casing.
1401
1402.. option:: ParameterPrefix
1403
1404    When defined, the check will ensure parameter names will add the
1405    prefixed with the given value (regardless of casing).
1406
1407.. option:: ParameterIgnoredRegexp
1408
1409    Identifier naming checks won't be enforced for parameter names
1410    matching this regular expression.
1411
1412.. option:: ParameterSuffix
1413
1414    When defined, the check will ensure parameter names will add the
1415    suffix with the given value (regardless of casing).
1416
1417For example using values of:
1418
1419   - ParameterCase of ``lower_case``
1420   - ParameterPrefix of ``pre_``
1421   - ParameterSuffix of ``_post``
1422
1423Identifies and/or transforms parameter names as follows:
1424
1425Before:
1426
1427.. code-block:: c++
1428
1429    void GLOBAL_FUNCTION(int PARAMETER_1, int const CONST_parameter);
1430
1431After:
1432
1433.. code-block:: c++
1434
1435    void GLOBAL_FUNCTION(int pre_parameter_post, int const CONST_parameter);
1436
1437.. option:: ParameterPackCase
1438
1439    When defined, the check will ensure parameter pack names conform to the
1440    selected casing.
1441
1442.. option:: ParameterPackPrefix
1443
1444    When defined, the check will ensure parameter pack names will add the
1445    prefixed with the given value (regardless of casing).
1446
1447.. option:: ParameterPackIgnoredRegexp
1448
1449    Identifier naming checks won't be enforced for parameter pack names
1450    matching this regular expression.
1451
1452.. option:: ParameterPackSuffix
1453
1454    When defined, the check will ensure parameter pack names will add the
1455    suffix with the given value (regardless of casing).
1456
1457For example using values of:
1458
1459   - ParameterPackCase of ``lower_case``
1460   - ParameterPackPrefix of ``pre_``
1461   - ParameterPackSuffix of ``_post``
1462
1463Identifies and/or transforms parameter pack names as follows:
1464
1465Before:
1466
1467.. code-block:: c++
1468
1469    template <typename... TYPE_parameters> {
1470      void FUNCTION(int... TYPE_parameters);
1471    }
1472
1473After:
1474
1475.. code-block:: c++
1476
1477    template <typename... TYPE_parameters> {
1478      void FUNCTION(int... pre_type_parameters_post);
1479    }
1480
1481.. option:: PointerParameterCase
1482
1483    When defined, the check will ensure pointer parameter names conform to the
1484    selected casing.
1485
1486.. option:: PointerParameterPrefix
1487
1488    When defined, the check will ensure pointer parameter names will add the
1489    prefixed with the given value (regardless of casing).
1490
1491.. option:: PointerParameterIgnoredRegexp
1492
1493    Identifier naming checks won't be enforced for pointer parameter names
1494    matching this regular expression.
1495
1496.. option:: PointerParameterSuffix
1497
1498    When defined, the check will ensure pointer parameter names will add the
1499    suffix with the given value (regardless of casing).
1500
1501For example using values of:
1502
1503   - PointerParameterCase of ``lower_case``
1504   - PointerParameterPrefix of ``pre_``
1505   - PointerParameterSuffix of ``_post``
1506
1507Identifies and/or transforms pointer parameter names as follows:
1508
1509Before:
1510
1511.. code-block:: c++
1512
1513    void FUNCTION(int *PARAMETER);
1514
1515After:
1516
1517.. code-block:: c++
1518
1519    void FUNCTION(int *pre_parameter_post);
1520
1521.. option:: PrivateMemberCase
1522
1523    When defined, the check will ensure private member names conform to the
1524    selected casing.
1525
1526.. option:: PrivateMemberPrefix
1527
1528    When defined, the check will ensure private member names will add the
1529    prefixed with the given value (regardless of casing).
1530
1531.. option:: PrivateMemberIgnoredRegexp
1532
1533    Identifier naming checks won't be enforced for private member names
1534    matching this regular expression.
1535
1536.. option:: PrivateMemberSuffix
1537
1538    When defined, the check will ensure private member names will add the
1539    suffix with the given value (regardless of casing).
1540
1541For example using values of:
1542
1543   - PrivateMemberCase of ``lower_case``
1544   - PrivateMemberPrefix of ``pre_``
1545   - PrivateMemberSuffix of ``_post``
1546
1547Identifies and/or transforms private member names as follows:
1548
1549Before:
1550
1551.. code-block:: c++
1552
1553    class Foo {
1554    private:
1555      int Member_Variable;
1556    }
1557
1558After:
1559
1560.. code-block:: c++
1561
1562    class Foo {
1563    private:
1564      int pre_member_variable_post;
1565    }
1566
1567.. option:: PrivateMethodCase
1568
1569    When defined, the check will ensure private method names conform to the
1570    selected casing.
1571
1572.. option:: PrivateMethodPrefix
1573
1574    When defined, the check will ensure private method names will add the
1575    prefixed with the given value (regardless of casing).
1576
1577.. option:: PrivateMethodIgnoredRegexp
1578
1579    Identifier naming checks won't be enforced for private method names
1580    matching this regular expression.
1581
1582.. option:: PrivateMethodSuffix
1583
1584    When defined, the check will ensure private method names will add the
1585    suffix with the given value (regardless of casing).
1586
1587For example using values of:
1588
1589   - PrivateMethodCase of ``lower_case``
1590   - PrivateMethodPrefix of ``pre_``
1591   - PrivateMethodSuffix of ``_post``
1592
1593Identifies and/or transforms private method names as follows:
1594
1595Before:
1596
1597.. code-block:: c++
1598
1599    class Foo {
1600    private:
1601      int Member_Method();
1602    }
1603
1604After:
1605
1606.. code-block:: c++
1607
1608    class Foo {
1609    private:
1610      int pre_member_method_post();
1611    }
1612
1613.. option:: ProtectedMemberCase
1614
1615    When defined, the check will ensure protected member names conform to the
1616    selected casing.
1617
1618.. option:: ProtectedMemberPrefix
1619
1620    When defined, the check will ensure protected member names will add the
1621    prefixed with the given value (regardless of casing).
1622
1623.. option:: ProtectedMemberIgnoredRegexp
1624
1625    Identifier naming checks won't be enforced for protected member names
1626    matching this regular expression.
1627
1628.. option:: ProtectedMemberSuffix
1629
1630    When defined, the check will ensure protected member names will add the
1631    suffix with the given value (regardless of casing).
1632
1633For example using values of:
1634
1635   - ProtectedMemberCase of ``lower_case``
1636   - ProtectedMemberPrefix of ``pre_``
1637   - ProtectedMemberSuffix of ``_post``
1638
1639Identifies and/or transforms protected member names as follows:
1640
1641Before:
1642
1643.. code-block:: c++
1644
1645    class Foo {
1646    protected:
1647      int Member_Variable;
1648    }
1649
1650After:
1651
1652.. code-block:: c++
1653
1654    class Foo {
1655    protected:
1656      int pre_member_variable_post;
1657    }
1658
1659.. option:: ProtectedMethodCase
1660
1661    When defined, the check will ensure protected method names conform to the
1662    selected casing.
1663
1664.. option:: ProtectedMethodPrefix
1665
1666    When defined, the check will ensure protected method names will add the
1667    prefixed with the given value (regardless of casing).
1668
1669.. option:: ProtectedMethodIgnoredRegexp
1670
1671    Identifier naming checks won't be enforced for protected method names
1672    matching this regular expression.
1673
1674.. option:: ProtectedMethodSuffix
1675
1676    When defined, the check will ensure protected method names will add the
1677    suffix with the given value (regardless of casing).
1678
1679For example using values of:
1680
1681   - ProtectedMethodCase of ``lower_case``
1682   - ProtectedMethodPrefix of ``pre_``
1683   - ProtectedMethodSuffix of ``_post``
1684
1685Identifies and/or transforms protect method names as follows:
1686
1687Before:
1688
1689.. code-block:: c++
1690
1691    class Foo {
1692    protected:
1693      int Member_Method();
1694    }
1695
1696After:
1697
1698.. code-block:: c++
1699
1700    class Foo {
1701    protected:
1702      int pre_member_method_post();
1703    }
1704
1705.. option:: PublicMemberCase
1706
1707    When defined, the check will ensure public member names conform to the
1708    selected casing.
1709
1710.. option:: PublicMemberPrefix
1711
1712    When defined, the check will ensure public member names will add the
1713    prefixed with the given value (regardless of casing).
1714
1715.. option:: PublicMemberIgnoredRegexp
1716
1717    Identifier naming checks won't be enforced for public member names
1718    matching this regular expression.
1719
1720.. option:: PublicMemberSuffix
1721
1722    When defined, the check will ensure public member names will add the
1723    suffix with the given value (regardless of casing).
1724
1725For example using values of:
1726
1727   - PublicMemberCase of ``lower_case``
1728   - PublicMemberPrefix of ``pre_``
1729   - PublicMemberSuffix of ``_post``
1730
1731Identifies and/or transforms public member names as follows:
1732
1733Before:
1734
1735.. code-block:: c++
1736
1737    class Foo {
1738    public:
1739      int Member_Variable;
1740    }
1741
1742After:
1743
1744.. code-block:: c++
1745
1746    class Foo {
1747    public:
1748      int pre_member_variable_post;
1749    }
1750
1751.. option:: PublicMethodCase
1752
1753    When defined, the check will ensure public method names conform to the
1754    selected casing.
1755
1756.. option:: PublicMethodPrefix
1757
1758    When defined, the check will ensure public method names will add the
1759    prefixed with the given value (regardless of casing).
1760
1761.. option:: PublicMethodIgnoredRegexp
1762
1763    Identifier naming checks won't be enforced for public method names
1764    matching this regular expression.
1765
1766.. option:: PublicMethodSuffix
1767
1768    When defined, the check will ensure public method names will add the
1769    suffix with the given value (regardless of casing).
1770
1771For example using values of:
1772
1773   - PublicMethodCase of ``lower_case``
1774   - PublicMethodPrefix of ``pre_``
1775   - PublicMethodSuffix of ``_post``
1776
1777Identifies and/or transforms public method names as follows:
1778
1779Before:
1780
1781.. code-block:: c++
1782
1783    class Foo {
1784    public:
1785      int Member_Method();
1786    }
1787
1788After:
1789
1790.. code-block:: c++
1791
1792    class Foo {
1793    public:
1794      int pre_member_method_post();
1795    }
1796
1797.. option:: ScopedEnumConstantCase
1798
1799    When defined, the check will ensure scoped enum constant names conform to
1800    the selected casing.
1801
1802.. option:: ScopedEnumConstantPrefix
1803
1804    When defined, the check will ensure scoped enum constant names will add the
1805    prefixed with the given value (regardless of casing).
1806
1807.. option:: ScopedEnumConstantIgnoredRegexp
1808
1809    Identifier naming checks won't be enforced for scoped enum constant names
1810    matching this regular expression.
1811
1812.. option:: ScopedEnumConstantSuffix
1813
1814    When defined, the check will ensure scoped enum constant names will add the
1815    suffix with the given value (regardless of casing).
1816
1817For example using values of:
1818
1819   - ScopedEnumConstantCase of ``lower_case``
1820   - ScopedEnumConstantPrefix of ``pre_``
1821   - ScopedEnumConstantSuffix of ``_post``
1822
1823Identifies and/or transforms enumeration constant names as follows:
1824
1825Before:
1826
1827.. code-block:: c++
1828
1829    enum class FOO { One, Two, Three };
1830
1831After:
1832
1833.. code-block:: c++
1834
1835    enum class FOO { pre_One_post, pre_Two_post, pre_Three_post };
1836
1837.. option:: StaticConstantCase
1838
1839    When defined, the check will ensure static constant names conform to the
1840    selected casing.
1841
1842.. option:: StaticConstantPrefix
1843
1844    When defined, the check will ensure static constant names will add the
1845    prefixed with the given value (regardless of casing).
1846
1847.. option:: StaticConstantIgnoredRegexp
1848
1849    Identifier naming checks won't be enforced for static constant names
1850    matching this regular expression.
1851
1852.. option:: StaticConstantSuffix
1853
1854    When defined, the check will ensure static constant names will add the
1855    suffix with the given value (regardless of casing).
1856
1857For example using values of:
1858
1859   - StaticConstantCase of ``lower_case``
1860   - StaticConstantPrefix of ``pre_``
1861   - StaticConstantSuffix of ``_post``
1862
1863Identifies and/or transforms static constant names as follows:
1864
1865Before:
1866
1867.. code-block:: c++
1868
1869    static unsigned const MyConstStatic_array[] = {1, 2, 3};
1870
1871After:
1872
1873.. code-block:: c++
1874
1875    static unsigned const pre_myconststatic_array_post[] = {1, 2, 3};
1876
1877.. option:: StaticVariableCase
1878
1879    When defined, the check will ensure static variable names conform to the
1880    selected casing.
1881
1882.. option:: StaticVariablePrefix
1883
1884    When defined, the check will ensure static variable names will add the
1885    prefixed with the given value (regardless of casing).
1886
1887.. option:: StaticVariableIgnoredRegexp
1888
1889    Identifier naming checks won't be enforced for static variable names
1890    matching this regular expression.
1891
1892.. option:: StaticVariableSuffix
1893
1894    When defined, the check will ensure static variable names will add the
1895    suffix with the given value (regardless of casing).
1896
1897For example using values of:
1898
1899   - StaticVariableCase of ``lower_case``
1900   - StaticVariablePrefix of ``pre_``
1901   - StaticVariableSuffix of ``_post``
1902
1903Identifies and/or transforms static variable names as follows:
1904
1905Before:
1906
1907.. code-block:: c++
1908
1909    static unsigned MyStatic_array[] = {1, 2, 3};
1910
1911After:
1912
1913.. code-block:: c++
1914
1915    static unsigned pre_mystatic_array_post[] = {1, 2, 3};
1916
1917.. option:: StructCase
1918
1919    When defined, the check will ensure struct names conform to the
1920    selected casing.
1921
1922.. option:: StructPrefix
1923
1924    When defined, the check will ensure struct names will add the
1925    prefixed with the given value (regardless of casing).
1926
1927.. option:: StructIgnoredRegexp
1928
1929    Identifier naming checks won't be enforced for struct names
1930    matching this regular expression.
1931
1932.. option:: StructSuffix
1933
1934    When defined, the check will ensure struct names will add the
1935    suffix with the given value (regardless of casing).
1936
1937For example using values of:
1938
1939   - StructCase of ``lower_case``
1940   - StructPrefix of ``pre_``
1941   - StructSuffix of ``_post``
1942
1943Identifies and/or transforms struct names as follows:
1944
1945Before:
1946
1947.. code-block:: c++
1948
1949    struct FOO {
1950      FOO();
1951      ~FOO();
1952    };
1953
1954After:
1955
1956.. code-block:: c++
1957
1958    struct pre_foo_post {
1959      pre_foo_post();
1960      ~pre_foo_post();
1961    };
1962
1963.. option:: TemplateParameterCase
1964
1965    When defined, the check will ensure template parameter names conform to the
1966    selected casing.
1967
1968.. option:: TemplateParameterPrefix
1969
1970    When defined, the check will ensure template parameter names will add the
1971    prefixed with the given value (regardless of casing).
1972
1973.. option:: TemplateParameterIgnoredRegexp
1974
1975    Identifier naming checks won't be enforced for template parameter names
1976    matching this regular expression.
1977
1978.. option:: TemplateParameterSuffix
1979
1980    When defined, the check will ensure template parameter names will add the
1981    suffix with the given value (regardless of casing).
1982
1983For example using values of:
1984
1985   - TemplateParameterCase of ``lower_case``
1986   - TemplateParameterPrefix of ``pre_``
1987   - TemplateParameterSuffix of ``_post``
1988
1989Identifies and/or transforms template parameter names as follows:
1990
1991Before:
1992
1993.. code-block:: c++
1994
1995    template <typename T> class Foo {};
1996
1997After:
1998
1999.. code-block:: c++
2000
2001    template <typename pre_t_post> class Foo {};
2002
2003.. option:: TemplateTemplateParameterCase
2004
2005    When defined, the check will ensure template template parameter names conform to the
2006    selected casing.
2007
2008.. option:: TemplateTemplateParameterPrefix
2009
2010    When defined, the check will ensure template template parameter names will add the
2011    prefixed with the given value (regardless of casing).
2012
2013.. option:: TemplateTemplateParameterIgnoredRegexp
2014
2015    Identifier naming checks won't be enforced for template template parameter
2016    names matching this regular expression.
2017
2018.. option:: TemplateTemplateParameterSuffix
2019
2020    When defined, the check will ensure template template parameter names will add the
2021    suffix with the given value (regardless of casing).
2022
2023For example using values of:
2024
2025   - TemplateTemplateParameterCase of ``lower_case``
2026   - TemplateTemplateParameterPrefix of ``pre_``
2027   - TemplateTemplateParameterSuffix of ``_post``
2028
2029Identifies and/or transforms template template parameter names as follows:
2030
2031Before:
2032
2033.. code-block:: c++
2034
2035    template <template <typename> class TPL_parameter, int COUNT_params,
2036              typename... TYPE_parameters>
2037
2038After:
2039
2040.. code-block:: c++
2041
2042    template <template <typename> class pre_tpl_parameter_post, int COUNT_params,
2043              typename... TYPE_parameters>
2044
2045.. option:: TypeAliasCase
2046
2047    When defined, the check will ensure type alias names conform to the
2048    selected casing.
2049
2050.. option:: TypeAliasPrefix
2051
2052    When defined, the check will ensure type alias names will add the
2053    prefixed with the given value (regardless of casing).
2054
2055.. option:: TypeAliasIgnoredRegexp
2056
2057    Identifier naming checks won't be enforced for type alias names
2058    matching this regular expression.
2059
2060.. option:: TypeAliasSuffix
2061
2062    When defined, the check will ensure type alias names will add the
2063    suffix with the given value (regardless of casing).
2064
2065For example using values of:
2066
2067   - TypeAliasCase of ``lower_case``
2068   - TypeAliasPrefix of ``pre_``
2069   - TypeAliasSuffix of ``_post``
2070
2071Identifies and/or transforms type alias names as follows:
2072
2073Before:
2074
2075.. code-block:: c++
2076
2077    using MY_STRUCT_TYPE = my_structure;
2078
2079After:
2080
2081.. code-block:: c++
2082
2083    using pre_my_struct_type_post = my_structure;
2084
2085.. option:: TypedefCase
2086
2087    When defined, the check will ensure typedef names conform to the
2088    selected casing.
2089
2090.. option:: TypedefPrefix
2091
2092    When defined, the check will ensure typedef names will add the
2093    prefixed with the given value (regardless of casing).
2094
2095.. option:: TypedefIgnoredRegexp
2096
2097    Identifier naming checks won't be enforced for typedef names
2098    matching this regular expression.
2099
2100.. option:: TypedefSuffix
2101
2102    When defined, the check will ensure typedef names will add the
2103    suffix with the given value (regardless of casing).
2104
2105For example using values of:
2106
2107   - TypedefCase of ``lower_case``
2108   - TypedefPrefix of ``pre_``
2109   - TypedefSuffix of ``_post``
2110
2111Identifies and/or transforms typedef names as follows:
2112
2113Before:
2114
2115.. code-block:: c++
2116
2117    typedef int MYINT;
2118
2119After:
2120
2121.. code-block:: c++
2122
2123    typedef int pre_myint_post;
2124
2125.. option:: TypeTemplateParameterCase
2126
2127    When defined, the check will ensure type template parameter names conform to the
2128    selected casing.
2129
2130.. option:: TypeTemplateParameterPrefix
2131
2132    When defined, the check will ensure type template parameter names will add the
2133    prefixed with the given value (regardless of casing).
2134
2135.. option:: TypeTemplateParameterIgnoredRegexp
2136
2137    Identifier naming checks won't be enforced for type template names
2138    matching this regular expression.
2139
2140.. option:: TypeTemplateParameterSuffix
2141
2142    When defined, the check will ensure type template parameter names will add the
2143    suffix with the given value (regardless of casing).
2144
2145For example using values of:
2146
2147   - TypeTemplateParameterCase of ``lower_case``
2148   - TypeTemplateParameterPrefix of ``pre_``
2149   - TypeTemplateParameterSuffix of ``_post``
2150
2151Identifies and/or transforms type template parameter names as follows:
2152
2153Before:
2154
2155.. code-block:: c++
2156
2157    template <template <typename> class TPL_parameter, int COUNT_params,
2158              typename... TYPE_parameters>
2159
2160After:
2161
2162.. code-block:: c++
2163
2164    template <template <typename> class TPL_parameter, int COUNT_params,
2165              typename... pre_type_parameters_post>
2166
2167.. option:: UnionCase
2168
2169    When defined, the check will ensure union names conform to the
2170    selected casing.
2171
2172.. option:: UnionPrefix
2173
2174    When defined, the check will ensure union names will add the
2175    prefixed with the given value (regardless of casing).
2176
2177.. option:: UnionIgnoredRegexp
2178
2179    Identifier naming checks won't be enforced for union names
2180    matching this regular expression.
2181
2182.. option:: UnionSuffix
2183
2184    When defined, the check will ensure union names will add the
2185    suffix with the given value (regardless of casing).
2186
2187For example using values of:
2188
2189   - UnionCase of ``lower_case``
2190   - UnionPrefix of ``pre_``
2191   - UnionSuffix of ``_post``
2192
2193Identifies and/or transforms union names as follows:
2194
2195Before:
2196
2197.. code-block:: c++
2198
2199    union FOO {
2200      int a;
2201      char b;
2202    };
2203
2204After:
2205
2206.. code-block:: c++
2207
2208    union pre_foo_post {
2209      int a;
2210      char b;
2211    };
2212
2213.. option:: ValueTemplateParameterCase
2214
2215    When defined, the check will ensure value template parameter names conform to the
2216    selected casing.
2217
2218.. option:: ValueTemplateParameterPrefix
2219
2220    When defined, the check will ensure value template parameter names will add the
2221    prefixed with the given value (regardless of casing).
2222
2223.. option:: ValueTemplateParameterIgnoredRegexp
2224
2225    Identifier naming checks won't be enforced for value template parameter
2226    names matching this regular expression.
2227
2228.. option:: ValueTemplateParameterSuffix
2229
2230    When defined, the check will ensure value template parameter names will add the
2231    suffix with the given value (regardless of casing).
2232
2233For example using values of:
2234
2235   - ValueTemplateParameterCase of ``lower_case``
2236   - ValueTemplateParameterPrefix of ``pre_``
2237   - ValueTemplateParameterSuffix of ``_post``
2238
2239Identifies and/or transforms value template parameter names as follows:
2240
2241Before:
2242
2243.. code-block:: c++
2244
2245    template <template <typename> class TPL_parameter, int COUNT_params,
2246              typename... TYPE_parameters>
2247
2248After:
2249
2250.. code-block:: c++
2251
2252    template <template <typename> class TPL_parameter, int pre_count_params_post,
2253              typename... TYPE_parameters>
2254
2255.. option:: VariableCase
2256
2257    When defined, the check will ensure variable names conform to the
2258    selected casing.
2259
2260.. option:: VariablePrefix
2261
2262    When defined, the check will ensure variable names will add the
2263    prefixed with the given value (regardless of casing).
2264
2265.. option:: VariableIgnoredRegexp
2266
2267    Identifier naming checks won't be enforced for variable names
2268    matching this regular expression.
2269
2270.. option:: VariableSuffix
2271
2272    When defined, the check will ensure variable names will add the
2273    suffix with the given value (regardless of casing).
2274
2275For example using values of:
2276
2277   - VariableCase of ``lower_case``
2278   - VariablePrefix of ``pre_``
2279   - VariableSuffix of ``_post``
2280
2281Identifies and/or transforms variable names as follows:
2282
2283Before:
2284
2285.. code-block:: c++
2286
2287    unsigned MyVariable;
2288
2289After:
2290
2291.. code-block:: c++
2292
2293    unsigned pre_myvariable_post;
2294
2295.. option:: VirtualMethodCase
2296
2297    When defined, the check will ensure virtual method names conform to the
2298    selected casing.
2299
2300.. option:: VirtualMethodPrefix
2301
2302    When defined, the check will ensure virtual method names will add the
2303    prefixed with the given value (regardless of casing).
2304
2305.. option:: VirtualMethodIgnoredRegexp
2306
2307    Identifier naming checks won't be enforced for virtual method names
2308    matching this regular expression.
2309
2310.. option:: VirtualMethodSuffix
2311
2312    When defined, the check will ensure virtual method names will add the
2313    suffix with the given value (regardless of casing).
2314
2315For example using values of:
2316
2317   - VirtualMethodCase of ``lower_case``
2318   - VirtualMethodPrefix of ``pre_``
2319   - VirtualMethodSuffix of ``_post``
2320
2321Identifies and/or transforms virtual method names as follows:
2322
2323Before:
2324
2325.. code-block:: c++
2326
2327    class Foo {
2328    public:
2329      virtual int MemberFunction();
2330    }
2331
2332After:
2333
2334.. code-block:: c++
2335
2336    class Foo {
2337    public:
2338      virtual int pre_member_function_post();
2339    }
2340