/*
 * project-cli.h
 *
 *  Created on: 19 мар. 2019 г.
 *      Author: Lityagin Aleksandr
 * ------------------------------------------------------------
 * этот хедер lib/cli.hpp использует для адаптации к приложению.
 * он не должен использоваться прилежением нигде более
 *
 * приложение должно предоставить свою, настроенную, версию этого хедера
 */

#ifndef HAL_PORTING_PROJECT_CLI_H_
#define HAL_PORTING_PROJECT_CLI_H_


// если задан этот параметр, то CLICommands будет делаться статическим массивом, вместо вектора
//#define CLI_VECTOR_LIMIT 16

// если задан этот параметр, то CLICommand будет разрегистрироваться при удалении
// если система команд статична, десткруктор не будет пользоваться разрегистрацией
// #define CLI_DYNAMICS_CMD

//размер буфера под командную строку
//#define CLI_SHELLLINE_LIMIT 2048u

//размер буфера для печати консоли
//#define CLI_SHELLPRINT_LIMIT (CLI_SHELLLINE_LIMIT*2)


//если задан CLI_CHAR то cli::Char будет опираться на него
//#define CLI_CHAR char

/*
typedef CLIVectorLine CLIShellLine;

#include <print_hal.hpp>




#include "stdio_device.hpp"
// класс ввода/вывода предоставляющий консоль командной строке
typedef class STDIODevice         AppShellIO;

*/

// клавиш enter имеет это код
//#define SHELL_EOL '\n'

//provide exception-guarded commands execution
//#define CLI_SHELL_EXCEPITONALE 1

//#define ASSERT_CLI 1

// provide App_CLI_Shell termination command name
//#define CLI_SHELL_TERMINATE_CMD "logout"


#endif /* HAL_PORTING_PROJECT_CLI_H_ */
