31 const int NUMBER_OF_LINES_BEFORE_FOR_FUNCTION_NAME = 7;
32 const int C_RELEVANT_DEPTH = 0;
33 const bool IGNORE_EMPTY_FUNCTIONS =
true;
34 const bool ALLOW_STRUCTS =
false;
36 vector<string> file_content;
37 vector<vector<bool>> mask_valid;
45 bool is_define(
int line,
int pos);
52 void filter_mask_commentaries_and_defines(vector<vector<bool>>& mask);
58 vector<vector<bool>> build_mask_valid_code();
64 set<array<int,5>> find_start_end_and_depth_of_brackets();
70 set<array<int,4>> find_start_end_of_brackets_of_given_depth();
80 vector<string> build_function_content(
int start_number_line,
int start_column,
int end_number_line,
int end_column);
88 bool move_pointer_until_character_outside_parenteses(
int &line,
int &column);
96 tuple<string,int,vector<string>> extract_header_related_information(
int start_line,
int start_column);
106 bool is_body_function_empty(
int start_number_line,
int start_column,
int end_number_line,
int end_column);
116 void process_function(
int start_number_line,
int start_column,
int end_number_line,
int end_column,
string relative_path);
124 string file_path_from_folder_path(
string file_path,
string folder_path);
131 void file_breaker_c(
string file_path,
string folder_path);