A Discrete-Event Network Simulator
API
Loading...
Searching...
No Matches
check-style-clang-format Namespace Reference

Functions

Tuple[str, bool, List[str]] check_formatting_file (str filename, bool fix, bool verbose, str clang_format_path)
 CHECK STYLE FUNCTIONS.
 
Tuple[bool, str, List[str]] check_include_prefixes_line (str line, str filename, int line_number)
 
Tuple[str, bool, List[str]] check_manually_file (str filename, bool fix, bool verbose, bool respect_clang_format_guards, Callable[[str, str, int], Tuple[bool, str, List[str]]] check_style_line_function)
 
bool check_style_clang_format (List[str] paths, bool enable_check_include_prefixes, bool enable_check_formatting, bool enable_check_whitespace, bool enable_check_tabs, bool fix, bool verbose, int n_jobs=1)
 CHECK STYLE MAIN FUNCTIONS.
 
bool check_style_files (str style_check_str, Callable[..., Tuple[str, bool, List[str]]] check_style_file_function, List[str] filenames, bool fix, bool verbose, int n_jobs, **kwargs)
 
Tuple[bool, str, List[str]] check_tabs_line (str line, str filename, int line_number)
 
Tuple[bool, str, List[str]] check_whitespace_line (str line, str filename, int line_number)
 
str find_clang_format_path ()
 
Tuple[List[str], List[str], List[str], List[str]] find_files_to_check_style (List[str] paths)
 
bool should_analyze_directory (str dirpath)
 AUXILIARY FUNCTIONS.
 
bool should_analyze_file (str path, List[str] files_to_check, List[str] file_extensions_to_check)
 

Variables

 action
 
bool all_checks_successful
 
argparse args = parser.parse_args()
 
str CLANG_FORMAT_GUARD_OFF = "// clang-format off"
 
str CLANG_FORMAT_GUARD_ON = "// clang-format on"
 
list CLANG_FORMAT_VERSIONS
 PARAMETERS.
 
 default
 
list DIRECTORIES_TO_SKIP
 
list FILE_EXTENSIONS_TO_CHECK_FORMATTING
 
list FILE_EXTENSIONS_TO_CHECK_INCLUDE_PREFIXES = FILE_EXTENSIONS_TO_CHECK_FORMATTING
 
list FILE_EXTENSIONS_TO_CHECK_TABS
 
list FILE_EXTENSIONS_TO_CHECK_WHITESPACE
 
list FILES_TO_CHECK_WHITESPACE
 
list FILES_TO_SKIP
 
 help
 
 nargs
 
argparse parser
 MAIN.
 
int TAB_SIZE = 4
 
 try :
 
 type
 

Function Documentation

◆ check_formatting_file()

Tuple[str, bool, List[str]] check-style-clang-format.check_formatting_file ( str  filename,
bool  fix,
bool  verbose,
str  clang_format_path 
)

CHECK STYLE FUNCTIONS.

Check / fix the coding style of a file with clang-format.

@param filename Name of the file to be checked.
@param fix Whether to fix (True) or just check (False) the style of the file (True).
@param verbose Show the lines that are not compliant with the style.
@param clang_format_path Path to clang-format.
@return Tuple [Filename,
               Whether the file is compliant with the style (before the check),
               Verbose information].

Definition at line 443 of file check-style-clang-format.py.

◆ check_include_prefixes_line()

Tuple[bool, str, List[str]] check-style-clang-format.check_include_prefixes_line ( str  line,
str  filename,
int  line_number 
)
Check / fix #include headers from the same module with the "ns3/" prefix in a line.

@param line The line to check.
@param filename Name of the file to be checked.
@param line_number The number of the line checked.
@return Tuple [Whether the line is compliant with the style (before the check),
               Fixed line,
               Verbose information].

Definition at line 566 of file check-style-clang-format.py.

◆ check_manually_file()

Tuple[str, bool, List[str]] check-style-clang-format.check_manually_file ( str  filename,
bool  fix,
bool  verbose,
bool  respect_clang_format_guards,
Callable[[str, str, int], Tuple[bool, str, List[str]]]  check_style_line_function 
)
Check / fix a file manually using a function to check / fix each line.

@param filename Name of the file to be checked.
@param fix Whether to fix (True) or just check (False) the style of the file (True).
@param verbose Show the lines that are not compliant with the style.
@param respect_clang_format_guards Whether to respect clang-format guards.
@param check_style_line_function Function used to check each line.
@return Tuple [Filename,
               Whether the file is compliant with the style (before the check),
               Verbose information].

Definition at line 501 of file check-style-clang-format.py.

◆ check_style_clang_format()

bool check-style-clang-format.check_style_clang_format ( List[str]  paths,
bool  enable_check_include_prefixes,
bool  enable_check_formatting,
bool  enable_check_whitespace,
bool  enable_check_tabs,
bool  fix,
bool  verbose,
int   n_jobs = 1 
)

CHECK STYLE MAIN FUNCTIONS.

Check / fix the coding style of a list of files.

@param paths List of paths to the files to check.
@param enable_check_include_prefixes Whether to enable checking #include headers from the same module with the "ns3/" prefix.
@param enable_check_formatting Whether to enable checking code formatting.
@param enable_check_whitespace Whether to enable checking trailing whitespace.
@param enable_check_tabs Whether to enable checking tabs.
@param fix Whether to fix (True) or just check (False) the file.
@param verbose Show the lines that are not compliant with the style.
@param n_jobs Number of parallel jobs.
@return Whether all files are compliant with all enabled style checks.

Definition at line 276 of file check-style-clang-format.py.

References check_style_files(), find_clang_format_path(), and find_files_to_check_style().

+ Here is the call graph for this function:

◆ check_style_files()

bool check-style-clang-format.check_style_files ( str  style_check_str,
Callable[..., Tuple[str, bool, List[str]]]  check_style_file_function,
List[str]  filenames,
bool  fix,
bool  verbose,
int  n_jobs,
**  kwargs 
)
Check / fix style of a list of files.

@param style_check_str Description of the check to be performed.
@param check_style_file_function Function used to check the file.
@param filename Name of the file to be checked.
@param fix Whether to fix (True) or just check (False) the file (True).
@param verbose Show the lines that are not compliant with the style.
@param n_jobs Number of parallel jobs.
@param kwargs Additional keyword arguments to the check_style_file_function.
@return Whether all files are compliant with the style.

Definition at line 375 of file check-style-clang-format.py.

Referenced by check_style_clang_format().

+ Here is the caller graph for this function:

◆ check_tabs_line()

Tuple[bool, str, List[str]] check-style-clang-format.check_tabs_line ( str  line,
str  filename,
int  line_number 
)
Check / fix tabs in a line.

@param line The line to check.
@param filename Name of the file to be checked.
@param line_number The number of the line checked.
@return Tuple [Whether the line is compliant with the style (before the check),
               Fixed line,
               Verbose information].

Definition at line 650 of file check-style-clang-format.py.

◆ check_whitespace_line()

Tuple[bool, str, List[str]] check-style-clang-format.check_whitespace_line ( str  line,
str  filename,
int  line_number 
)
Check / fix whitespace in a line.

@param line The line to check.
@param filename Name of the file to be checked.
@param line_number The number of the line checked.
@return Tuple [Whether the line is compliant with the style (before the check),
               Fixed line,
               Verbose information].

Definition at line 617 of file check-style-clang-format.py.

◆ find_clang_format_path()

str check-style-clang-format.find_clang_format_path ( )
Find the path to one of the supported versions of clang-format.
If no supported version of clang-format is found, raise an exception.

@return Path to clang-format.

Definition at line 234 of file check-style-clang-format.py.

Referenced by check_style_clang_format().

+ Here is the caller graph for this function:

◆ find_files_to_check_style()

Tuple[List[str], List[str], List[str], List[str]] check-style-clang-format.find_files_to_check_style ( List[str]  paths)
Find all files to be checked in a given list of paths.

@param paths List of paths to the files to check.
@return Tuple [List of files to check include prefixes,
               List of files to check formatting,
               List of files to check trailing whitespace,
               List of files to check tabs].

Definition at line 173 of file check-style-clang-format.py.

References should_analyze_directory(), and should_analyze_file().

Referenced by check_style_clang_format().

+ Here is the call graph for this function:
+ Here is the caller graph for this function:

◆ should_analyze_directory()

bool check-style-clang-format.should_analyze_directory ( str  dirpath)

AUXILIARY FUNCTIONS.

Check whether a directory should be analyzed.

@param dirpath Directory path.
@return Whether the directory should be analyzed.

Definition at line 134 of file check-style-clang-format.py.

Referenced by find_files_to_check_style().

+ Here is the caller graph for this function:

◆ should_analyze_file()

bool check-style-clang-format.should_analyze_file ( str  path,
List[str]  files_to_check,
List[str]  file_extensions_to_check 
)
Check whether a file should be analyzed.

@param path Path to the file.
@param files_to_check List of files that shall be checked.
@param file_extensions_to_check List of file extensions that shall be checked.
@return Whether the file should be analyzed.

Definition at line 149 of file check-style-clang-format.py.

Referenced by find_files_to_check_style().

+ Here is the caller graph for this function:

Variable Documentation

◆ action

check-style-clang-format.action

Definition at line 703 of file check-style-clang-format.py.

◆ all_checks_successful

bool check-style-clang-format.all_checks_successful
Initial value:
1= check_style_clang_format(
2 paths=args.paths,
3 enable_check_include_prefixes=(not args.no_include_prefixes),
4 enable_check_formatting=(not args.no_formatting),
5 enable_check_whitespace=(not args.no_whitespace),
6 enable_check_tabs=(not args.no_tabs),
7 fix=args.fix,
8 verbose=args.verbose,
9 n_jobs=args.jobs,
10 )

Definition at line 757 of file check-style-clang-format.py.

◆ args

argparse check-style-clang-format.args = parser.parse_args()

Definition at line 754 of file check-style-clang-format.py.

◆ CLANG_FORMAT_GUARD_OFF

str check-style-clang-format.CLANG_FORMAT_GUARD_OFF = "// clang-format off"

Definition at line 58 of file check-style-clang-format.py.

◆ CLANG_FORMAT_GUARD_ON

str check-style-clang-format.CLANG_FORMAT_GUARD_ON = "// clang-format on"

Definition at line 57 of file check-style-clang-format.py.

◆ CLANG_FORMAT_VERSIONS

list check-style-clang-format.CLANG_FORMAT_VERSIONS
Initial value:
1= [
2 17,
3 16,
4 15,
5 14,
6]

PARAMETERS.

Definition at line 50 of file check-style-clang-format.py.

◆ default

check-style-clang-format.default

Definition at line 750 of file check-style-clang-format.py.

◆ DIRECTORIES_TO_SKIP

list check-style-clang-format.DIRECTORIES_TO_SKIP
Initial value:
1= [
2 "__pycache__",
3 ".git",
4 "bindings",
5 "build",
6 "cmake-cache",
7 "testpy-output",
8]

Definition at line 60 of file check-style-clang-format.py.

◆ FILE_EXTENSIONS_TO_CHECK_FORMATTING

list check-style-clang-format.FILE_EXTENSIONS_TO_CHECK_FORMATTING
Initial value:
1= [
2 ".c",
3 ".cc",
4 ".h",
5]

Definition at line 75 of file check-style-clang-format.py.

◆ FILE_EXTENSIONS_TO_CHECK_INCLUDE_PREFIXES

list check-style-clang-format.FILE_EXTENSIONS_TO_CHECK_INCLUDE_PREFIXES = FILE_EXTENSIONS_TO_CHECK_FORMATTING

Definition at line 81 of file check-style-clang-format.py.

◆ FILE_EXTENSIONS_TO_CHECK_TABS

list check-style-clang-format.FILE_EXTENSIONS_TO_CHECK_TABS
Initial value:
1= [
2 ".c",
3 ".cc",
4 ".h",
5 ".md",
6 ".py",
7 ".rst",
8 ".sh",
9 ".yml",
10]

Definition at line 118 of file check-style-clang-format.py.

◆ FILE_EXTENSIONS_TO_CHECK_WHITESPACE

list check-style-clang-format.FILE_EXTENSIONS_TO_CHECK_WHITESPACE
Initial value:
1= [
2 ".c",
3 ".cc",
4 ".click",
5 ".cmake",
6 ".conf",
7 ".css",
8 ".dot",
9 ".gnuplot",
10 ".gp",
11 ".h",
12 ".html",
13 ".js",
14 ".json",
15 ".m",
16 ".md",
17 ".mob",
18 ".ns_params",
19 ".ns_movements",
20 ".params",
21 ".pl",
22 ".plt",
23 ".py",
24 ".rst",
25 ".seqdiag",
26 ".sh",
27 ".txt",
28 ".yml",
29]

Definition at line 83 of file check-style-clang-format.py.

◆ FILES_TO_CHECK_WHITESPACE

list check-style-clang-format.FILES_TO_CHECK_WHITESPACE
Initial value:
1= [
2 "Makefile",
3 "ns3",
4]

Definition at line 113 of file check-style-clang-format.py.

◆ FILES_TO_SKIP

list check-style-clang-format.FILES_TO_SKIP
Initial value:
1= [
2 "valgrind.h",
3]

Definition at line 71 of file check-style-clang-format.py.

◆ help

check-style-clang-format.help

Definition at line 706 of file check-style-clang-format.py.

◆ nargs

check-style-clang-format.nargs

Definition at line 705 of file check-style-clang-format.py.

◆ parser

argparse check-style-clang-format.parser
Initial value:
1= argparse.ArgumentParser(
2 description="Check and apply the ns-3 coding style recursively to all files in the given PATHs. "
3 "The script checks the formatting of the file with clang-format. "
4 'Additionally, it checks #include headers from the same module with the "ns3/" prefix, '
5 "the presence of trailing whitespace and tabs. "
6 'Formatting, local #include "ns3/" prefixes and tabs checks respect clang-format guards. '
7 'When used in "check mode" (default), the script checks if all files are well '
8 "formatted and do not have trailing whitespace nor tabs. "
9 "If it detects non-formatted files, they will be printed and this process exits with a "
10 'non-zero code. When used in "fix mode", this script automatically fixes the files.'
11 )

MAIN.

Definition at line 689 of file check-style-clang-format.py.

◆ TAB_SIZE

int check-style-clang-format.TAB_SIZE = 4

Definition at line 128 of file check-style-clang-format.py.

◆ try

check-style-clang-format.try :

Definition at line 756 of file check-style-clang-format.py.

◆ type

check-style-clang-format.type

Definition at line 704 of file check-style-clang-format.py.