dstroy0 / InputHandler

Arduino input handler
https://dstroy0.github.io/InputHandler/
GNU General Public License v3.0
1 stars 0 forks source link

Ih input behavior refactor #18

Closed dstroy0 closed 2 years ago

dstroy0 commented 2 years ago

Proposed changes to input behavior, add class output function to minimize output code reuse.

github-actions[bot] commented 2 years ago

:scroll: Run clang-format on the following files


:speech_balloon: Output from clang-tidy

src/InputHandler.cpp
src/InputHandler.cpp:20:18: warning: [modernize-use-trailing-return-type] > use a trailing return type for this function

```.cpp char *UserInput::NextArgument() ~~~~~~ ^ auto -> char * ```

src/InputHandler.cpp:20:18: warning: [readability-convert-member-functions-to-static] > method 'NextArgument' can be made static

```.cpp char *UserInput::NextArgument() ^ ```

src/InputHandler.cpp:23:5: warning: [bugprone-branch-clone] > if with identical then and else branches

```.cpp if (data_pointers_index < USER_INPUT_MAX_NUMBER_OF_COMMAND_ARGUMENTS && data_pointers_index < rec_num_arg_strings) ^ /github/workspace/src/InputHandler.cpp:27:5: note: else branch starts here else ^ ```

src/InputHandler.cpp:38:13: warning: [cppcoreguidelines-init-variables] > variable 'cmd_count' is not initialized

```.cpp size_t *cmd_count = &commands_count_; ^ = nullptr ```

src/InputHandler.cpp:39:13: warning: [cppcoreguidelines-init-variables] > variable 'arg_count' is not initialized

```.cpp size_t *arg_count = &max_num_user_defined_args; ^ = nullptr ```

src/InputHandler.cpp:51:13: warning: [cppcoreguidelines-init-variables] > variable 'max_args' is not initialized

```.cpp uint8_t max_args; ^ = 0 ```

src/InputHandler.cpp:59:17: warning: [modernize-use-trailing-return-type] > use a trailing return type for this function

```.cpp bool UserInput::getToken(char *token_buffer, uint8_t *data, size_t len, size_t *data_index) ~~~~ ^ auto -> bool ```

src/InputHandler.cpp:59:17: warning: [readability-convert-member-functions-to-static] > method 'getToken' can be made static

```.cpp bool UserInput::getToken(char *token_buffer, uint8_t *data, size_t len, size_t *data_index) ^ static ```

src/InputHandler.cpp:63:5: warning: [cppcoreguidelines-avoid-c-arrays] > do not declare C-style arrays, use std::array<> instead

```.cpp bool token_flag[2] = {false, false}; // token state machine, point to a token once ^ ```

src/InputHandler.cpp:63:5: warning: [modernize-avoid-c-arrays] > do not declare C-style arrays, use std::array<> instead

```.cpp ```

src/InputHandler.cpp:64:14: warning: [cppcoreguidelines-init-variables] > variable 'data_length' is not initialized

```.cpp uint32_t data_length = (uint32_t)len; ^ = 0 ```

src/InputHandler.cpp:163:17: warning: [modernize-use-trailing-return-type] > use a trailing return type for this function

```.cpp bool UserInput::validateUserInput(uint8_t arg_type, size_t data_pointers_index) ~~~~ ^ auto -> bool ```

src/InputHandler.cpp:163:17: warning: [readability-convert-member-functions-to-static] > method 'validateUserInput' can be made static

```.cpp bool UserInput::validateUserInput(uint8_t arg_type, size_t data_pointers_index) ^ static ```

src/InputHandler.cpp:165:14: warning: [cppcoreguidelines-init-variables] > variable 'strlen_data' is not initialized

```.cpp uint16_t strlen_data = strlen(data_pointers[data_pointers_index]); ^ = 0 ```

src/InputHandler.cpp:166:10: warning: [cppcoreguidelines-init-variables] > variable 'found_negative_sign' is not initialized

```.cpp bool found_negative_sign = ((char)data_pointers[data_pointers_index][0] == _neg_) ? true : false; ^ = 0 ```

src/InputHandler.cpp:172:40: warning: [readability-simplify-boolean-expr] > redundant boolean literal supplied to boolean operator

```.cpp if (found_negative_sign == true) ~~~~~~~~~~~~~~~~~~~~~~~^~~~ found_negative_sign ```

src/InputHandler.cpp:187:13: warning: [bugprone-branch-clone] > if with identical then and else branches

```.cpp if (found_negative_sign == true) // negative ^ /github/workspace/src/InputHandler.cpp:197:13: note: else branch starts here else // positive ^ ```

src/InputHandler.cpp:187:40: warning: [readability-simplify-boolean-expr] > redundant boolean literal supplied to boolean operator

```.cpp if (found_negative_sign == true) // negative ~~~~~~~~~~~~~~~~~~~~~~~^~~~ found_negative_sign ```

src/InputHandler.cpp:211:21: warning: [cppcoreguidelines-init-variables] > variable 'found_dot' is not initialized

```.cpp uint8_t found_dot = 0; ^ = 0 ```

src/InputHandler.cpp:212:21: warning: [cppcoreguidelines-init-variables] > variable 'num_digits' is not initialized

```.cpp uint8_t num_digits = 0; ^ = 0 ```

src/InputHandler.cpp:213:40: warning: [readability-simplify-boolean-expr] > redundant boolean literal supplied to boolean operator

```.cpp if (found_negative_sign == true) // negative ~~~~~~~~~~~~~~~~~~~~~~~^~~~ found_negative_sign ```

src/InputHandler.cpp:215:25: warning: [cppcoreguidelines-init-variables] > variable 'not_digits' is not initialized

```.cpp uint8_t not_digits = 0; ^ = 0 ```

src/InputHandler.cpp:439:31: warning: [readability-simplify-boolean-expr] > redundant boolean literal supplied to boolean operator

```.cpp if (subcommand_matched == true) // recursion ~~~~~~~~~~~~~~~~~~~~~~^~~~ subcommand_matched ```

src/InputHandler.cpp:471:13: warning: [cppcoreguidelines-init-variables] > variable 'tokens_received' is not initialized

```.cpp uint8_t tokens_received = 0; // amount of delimiter separated tokens ^ = 0 ```

src/InputHandler.cpp:472:12: warning: [cppcoreguidelines-init-variables] > variable 'data_index' is not initialized

```.cpp size_t data_index = 0; // data iterator ^ = 0 ```

src/InputHandler.cpp:477:13: warning: [cppcoreguidelines-init-variables] > variable 'failed_on_subcommand' is not initialized

```.cpp uint8_t failed_on_subcommand = 0; // error index ^ = 0 ```

src/InputHandler.cpp:478:25: warning: [cppcoreguidelines-init-variables] > variable 'cmd' is not initialized

```.cpp CommandConstructor *cmd; // command parameters pointer ^ = nullptr ```

src/InputHandler.cpp:505:5: warning: [cppcoreguidelines-avoid-c-arrays] > do not declare C-style arrays, use std::array<> instead

```.cpp bool input_type_match_flag[USER_INPUT_MAX_NUMBER_OF_COMMAND_ARGUMENTS] = {false}; ^ ```

src/InputHandler.cpp:505:5: warning: [modernize-avoid-c-arrays] > do not declare C-style arrays, use std::array<> instead

```.cpp ```

src/InputHandler.cpp:536:13: warning: [bugprone-branch-clone] > if with identical then and else branches

```.cpp if (failed_on_subcommand > 0) ^ /github/workspace/src/InputHandler.cpp:544:13: note: else branch starts here else ^ ```

src/InputHandler.cpp:548:36: warning: [readability-simplify-boolean-expr] > redundant boolean literal supplied to boolean operator

```.cpp if (command_matched == true) ~~~~~~~~~~~~~~~~~~~^~~~ command_matched ```

src/InputHandler.cpp:550:26: warning: [cppcoreguidelines-init-variables] > variable 'err_n_args' is not initialized

```.cpp uint16_t err_n_args = (prm.max_num_args > rec_num_arg_strings) ? rec_num_arg_strings : prm.max_num_args; ^ = 0 ```

src/InputHandler.cpp:585:59: warning: [readability-simplify-boolean-expr] > redundant boolean literal supplied to boolean operator

```.cpp if (command_matched && all_arguments_valid == false) ~~~~~~~~~~~~~~~~~~~~~~~^~~~~ !all_arguments_valid ```

src/InputHandler.cpp:587:26: warning: [cppcoreguidelines-init-variables] > variable 'err_n_args' is not initialized

```.cpp uint16_t err_n_args = (prm.max_num_args > rec_num_arg_strings) ? rec_num_arg_strings : prm.max_num_args; ^ = 0 ```

src/InputHandler.cpp:614:17: warning: [bugprone-branch-clone] > if with identical then and else branches

```.cpp if (prm.num_args == prm.max_num_args) // fixed amount of args ^ /github/workspace/src/InputHandler.cpp:627:17: note: else branch starts here else // variable number of args ^ ```

src/InputHandler.cpp:616:21: warning: [bugprone-branch-clone] > if with identical then and else branches

```.cpp if (failed_on_subcommand > 0) ^ /github/workspace/src/InputHandler.cpp:621:21: note: else branch starts here else ^ ```

src/InputHandler.cpp:629:21: warning: [bugprone-branch-clone] > if with identical then and else branches

```.cpp if (failed_on_subcommand > 0) ^ /github/workspace/src/InputHandler.cpp:634:21: note: else branch starts here else ^ ```

src/InputHandler.cpp:649:36: warning: [readability-simplify-boolean-expr] > redundant boolean literal supplied to boolean operator

```.cpp if (stream_buffer_allocated == false) ~~~~~~~~~~~~~~~~~~~~~~~~~~~^~~~~ !stream_buffer_allocated ```

src/InputHandler.cpp:660:11: warning: [cppcoreguidelines-init-variables] > variable 'rc' is not initialized

```.cpp char *rc = (char *)stream_data; // point rc to allocated memory ^ = nullptr ```

src/InputHandler.cpp:661:12: warning: [cppcoreguidelines-init-variables] > variable '_term_len_' is not initialized

```.cpp size_t _term_len_ = strlen(_term_); ^ = 0 ```

src/InputHandler.cpp:682:28: warning: [readability-simplify-boolean-expr] > redundant boolean literal supplied to boolean operator

```.cpp if (new_stream_data == true) ~~~~~~~~~~~~~~~~~~~^~~~ new_stream_data ```

src/InputHandler.cpp:692:17: warning: [readability-convert-member-functions-to-static] > method 'ListCommands' can be made static

```.cpp void UserInput::ListCommands() ^ ```

src/InputHandler.cpp:694:25: warning: [cppcoreguidelines-init-variables] > variable 'cmd' is not initialized

```.cpp CommandConstructor *cmd; ^ = nullptr ```

src/InputHandler.cpp:696:13: warning: [cppcoreguidelines-init-variables] > variable 'i' is not initialized

```.cpp uint8_t i = 1; ^ = 0 ```

src/InputHandler.cpp:706:17: warning: [readability-convert-member-functions-to-static] > method 'escapeCharactersSoTheyPrint' can be made static

```.cpp void UserInput::escapeCharactersSoTheyPrint(const char *input, char *output) ^ ```

src/InputHandler.cpp:708:14: warning: [cppcoreguidelines-init-variables] > variable 'len' is not initialized

```.cpp uint16_t len = strlen(input); ^ = 0 ```

src/InputHandler.cpp:744:17: warning: [modernize-use-trailing-return-type] > use a trailing return type for this function

```.cpp char UserInput::combineControlCharacters(char input) ~~~~ ^ auto -> char ```

src/InputHandler.cpp:744:17: warning: [readability-convert-member-functions-to-static] > method 'combineControlCharacters' can be made static

```.cpp char UserInput::combineControlCharacters(char input) ^ ```

src/InputHandler.cpp:771:5: warning: [cppcoreguidelines-avoid-c-arrays] > do not declare C-style arrays, use std::array<> instead

```.cpp char temp_settings[3][8] = {'\0'}; ^ ```

src/InputHandler.cpp:771:5: warning: [modernize-avoid-c-arrays] > do not declare C-style arrays, use std::array<> instead

```.cpp ```

src/InputHandler.cpp:771:27: warning: [cppcoreguidelines-avoid-magic-numbers] > 8 is a magic number; consider replacing it with a named constant

```.cpp char temp_settings[3][8] = {'\0'}; ^ ```

src/InputHandler.cpp:771:27: warning: [readability-magic-numbers] > 8 is a magic number; consider replacing it with a named constant

```.cpp ```

src/InputHandler.cpp:772:55: warning: [cppcoreguidelines-pro-bounds-array-to-pointer-decay] > do not implicitly decay an array into a pointer; consider using gsl::array_view or an explicit cast instead

```.cpp inputprocess->escapeCharactersSoTheyPrint(_term_, temp_settings[0]); ^ ```

src/InputHandler.cpp:773:56: warning: [cppcoreguidelines-pro-bounds-array-to-pointer-decay] > do not implicitly decay an array into a pointer; consider using gsl::array_view or an explicit cast instead

```.cpp inputprocess->escapeCharactersSoTheyPrint(_delim_, temp_settings[1]); ^ ```

src/InputHandler.cpp:774:62: warning: [cppcoreguidelines-pro-bounds-array-to-pointer-decay] > do not implicitly decay an array into a pointer; consider using gsl::array_view or an explicit cast instead

```.cpp inputprocess->escapeCharactersSoTheyPrint(_c_str_delim_, temp_settings[2]); ^ ```

src/InputHandler.cpp:790:17: warning: [modernize-use-trailing-return-type] > use a trailing return type for this function

```.cpp bool UserInput::OutputIsAvailable() ~~~~ ^ auto -> bool ```

src/InputHandler.cpp:790:17: warning: [readability-make-member-function-const] > method 'OutputIsAvailable' can be made const

```.cpp bool UserInput::OutputIsAvailable() ^ const ```

src/InputHandler.cpp:795:17: warning: [modernize-use-trailing-return-type] > use a trailing return type for this function

```.cpp bool UserInput::OutputIsEnabled() ~~~~ ^ auto -> bool ```

src/InputHandler.cpp:795:17: warning: [readability-make-member-function-const] > method 'OutputIsEnabled' can be made const

```.cpp bool UserInput::OutputIsEnabled() ^ const ```

src/InputHandler.cpp:823:20: warning: [modernize-use-trailing-return-type] > use a trailing return type for this function

```.cpp uint8_t UserInput::getArgType(Parameters &opt, size_t index) ^ ```

src/config/InputHandler_config.h:21:10: error: [clang-diagnostic-error] > 'Arduino.h' file not found

```.h #include ^ ```


src/InputHandler.h
src/config/InputHandler_config.h:21:10: error: [clang-diagnostic-error] > 'Arduino.h' file not found

```.h #include ^ ```