7#ifndef MFRAME_9F073801_76A1_4702_AB62_31A0D6EF56A5
8#define MFRAME_9F073801_76A1_4702_AB62_31A0D6EF56A5
15#include "./../lang/Object.h"
16#include "./../term/TerminalControl.h"
17#include "./../term/TerminalHelper.h"
18#include "./../util/PArraySet.h"
64 const char* vDescription;
86 const char* name =
"",
87 const char* description =
"") noexcept;
99 const
char* name = "",
100 const
char* description = "")
101 :
TerminalIndex(ufm::util::PArraySet(length), name, description) {
115 const char* name =
"",
116 const char* description =
"")
117 :
TerminalIndex(ufm::util::PArraySet(static_cast<ufm::lang::Memory&&>(memory)),
272 this->vName = (name ==
nullptr) ?
"" : name;
302 this->vDescription = (description ==
nullptr) ?
"" : description;
存儲資料的類別,提供動態記憶體管理功能。
Definition Memory.h:44
物件基底類別
Definition Object.h:63
終端機輔助類別,提供命令管理和執行功能
Definition TerminalHelper.h:50
void setIndexName(const char *indexName)
設定命令索引名稱
Definition TerminalHelper.h:172
終端機命令索引管理類別,提供命令註冊和查找功能
Definition TerminalIndex.h:56
TerminalIndex(ufm::lang::Memory memory, const char *name="", const char *description="")
使用指定記憶體建立 TerminalIndex 物件
Definition TerminalIndex.h:114
virtual bool onTabComplete(ufm::util::LineReader &lineReader, ufm::lang::Appendable &appendable, ufm::term::TerminalControl &control) override
處理終端機索引的 Tab 鍵補全功能
const char * getName(void) const
取得終端機索引名稱
Definition TerminalIndex.h:287
void setDescription(const char *description)
設定終端機索引描述
Definition TerminalIndex.h:301
bool addListener(ufm::term::TerminalListener &listener)
新增一個終端機命令監聽器
virtual const char * getDescription(void) const override
取得終端機索引的命令描述
virtual const char * getCommand(void) const override
取得終端機索引的命令名稱
void setName(const char *name)
設定終端機索引名稱
Definition TerminalIndex.h:271
virtual bool onCommand(ufm::util::LineReader &lineReader, ufm::term::TerminalControl &control) override
執行終端機索引的命令處理邏輯
ufm::term::TerminalListener * removeListener(const char *command)
根據命令名稱移除終端機命令監聽器
void clear(void)
清除所有終端機命令監聽器
virtual ~TerminalIndex(void) override
解構 TerminalIndex 物件
TerminalIndex(ufm::util::PArraySet pArraySet, const char *name="", const char *description="") noexcept
使用指定的陣列集合建立 TerminalIndex 物件
bool removeListener(ufm::term::TerminalListener &listener)
移除指定的終端機命令監聽器
行資料讀取器,提供從緩衝區解析字串、數值、布林等多種型態的資料。
Definition LineReader.h:58
PArraySet 類別
Definition PArraySet.h:40
資料附加介面 (Appendable)
Definition Appendable.h:43
禁止複製的結構
Definition NonCopyable.h:38
終端機控制介面
Definition TerminalControl.h:57
終端機命令介面
Definition TerminalListener.h:38