TNB Library
公開型 | 公開メンバ関数 | 全メンバ一覧
CTmlTextEscape クラス

TinyMacroLang 文字列解析 [詳解]

#include <TnbTmlTextEscape.h>

+ CTmlTextEscape の継承関係図

公開型

enum  EOperation {
  Operation_Non , Operation_Text , Operation_Text_Esc , Operation_Text_EscHex ,
  Operation_Calc , Operation_CheckFunc , Operation_CheckStatement , Operation_FindingFunc ,
  Operation_FileAccess
}
 オペレーションコード [詳解]
 
enum  EResult {
  Result_Success = 1 , Result_Nop = 0 , Result_UnknownError = -10000 , Result_InvalidEscSeq ,
  Result_InvalidHexNotation , Result_NotFoundParentheses , Result_NotCloseParentheses , Result_InvalidParenthesesPosition ,
  Result_UnfinishedExpression , Result_ZeroDivide , Result_UnknownKeyword , Result_InvalidWordPosition ,
  Result_NotName , Result_AlreadyExistName , Result_UnnecessaryParam , Result_ManyParam ,
  Result_NotenoughParam , Result_OutOfRange , Result_InvalidMacroContentsLevel , Result_OpenFailure ,
  Result_ReadFailure , Result_SendFailure , Result_InvalidState , Result_NotFoundFunction ,
  Result_UserInterruption , Result_ProgramableInterruption
}
 リザルトコード [詳解]
 
enum  EScene {
  Scene_Non , Scene_Val , Scene_Array , Scene_Func ,
  Scene_If , Scene_Else , Scene_Switch , Scene_Case ,
  Scene_Default , Scene_While , Scene_Break , Scene_Return ,
  Scene_Include , Scene_End
}
 シーンコード [詳解]
 

公開メンバ関数

 CTmlTextEscape (const CTmlTextEscape &other)
 コピーコンストラクタ; [詳解]
 
 CTmlTextEscape (void)
 コンストラクタ [詳解]
 
void Empty (void)
 Empty [詳解]
 
CTmlResult SetData (LPCSTR lpszData)
 [代入] 文字列を代入. [詳解]
 
CTmlResult SetHexToData (LPCSTR lpszData)
 [代入] HEX表記文字列を代入. [詳解]
 
CTmlValue ToValue (void) const
 [取得] CTmlValue 型で取得. [詳解]
 
virtual ~CTmlTextEscape (void)
 デストラクタ [詳解]
 

詳解

TinyMacroLang 文字列解析

文字列表記を TML 用に変換するために使用します。
必要ファイル
TnbTmlTextEscape.h
日付
06/01/01 新規作成
09/08/18 改新

TnbTmlTextEscape.h36 行目に定義があります。

列挙型メンバ詳解

◆ EOperation

enum EOperation
inherited

オペレーションコード

列挙値
Operation_Non 

未定義

Operation_Text 

文字列処理中

Operation_Text_Esc 

文字列 ¥? 処理中

Operation_Text_EscHex 

文字列 ¥x 処理中

Operation_Calc 

計算処理中

Operation_CheckFunc 

関数チェック中

Operation_CheckStatement 

ステートメントチェック中

Operation_FindingFunc 

関数検索中

Operation_FileAccess 

Fileアクセス中

TnbTmlResult.h71 行目に定義があります。

◆ EResult

enum EResult
inherited

リザルトコード

列挙値
Result_Success 

成功

Result_Nop 

処理なし

Result_UnknownError 

その他のエラー

Result_InvalidEscSeq 

エスケープシーケンスが異常

Result_InvalidHexNotation 

HEX表記が異常

Result_NotFoundParentheses 

括弧が必要なところにない

Result_NotCloseParentheses 

括弧が閉じていない

Result_InvalidParenthesesPosition 

括弧の位置がおかしい

Result_UnfinishedExpression 

計算式が途中で終わっている

Result_ZeroDivide 

0で割ろうとしてます

Result_UnknownKeyword 

知らないキーワード

Result_InvalidWordPosition 

単語位置が異常です(そこには存在しないはず)

Result_NotName 

名前がありません

Result_AlreadyExistName 

既にある名前です

Result_UnnecessaryParam 

引数は不必要です

Result_ManyParam 

引数が多すぎます

Result_NotenoughParam 

引数が足りません

Result_OutOfRange 

範囲外

Result_InvalidMacroContentsLevel 

マクロコンテンツレベルが異常です

Result_OpenFailure 

Open失敗

Result_ReadFailure 

Read失敗

Result_SendFailure 

Send失敗

Result_InvalidState 

状態エラー(今、実行できません)

Result_NotFoundFunction 

必要な関数がありません

Result_UserInterruption 

ユーザによる中断

Result_ProgramableInterruption 

プログラムによる中断

TnbTmlResult.h86 行目に定義があります。

◆ EScene

enum EScene
inherited

シーンコード

列挙値
Scene_Non 

未定義

Scene_Val 

val文処理中

Scene_Array 

array文処理中

Scene_Func 

func文処理中

Scene_If 

if文処理中

Scene_Else 

else文処理中

Scene_Switch 

switch文処理中

Scene_Case 

case文処理中

Scene_Default 

default文処理中

Scene_While 

while文処理中

Scene_Break 

break文処理中

Scene_Return 

return文処理中

Scene_Include 

include文処理中

Scene_End 

end文処理中

TnbTmlResult.h52 行目に定義があります。

構築子と解体子

◆ CTmlTextEscape() [1/2]

CTmlTextEscape ( void  )

コンストラクタ

TnbTmlTextEscape.h41 行目に定義があります。

◆ CTmlTextEscape() [2/2]

CTmlTextEscape ( const CTmlTextEscape other)

コピーコンストラクタ;

引数
otherコピー元

TnbTmlTextEscape.h49 行目に定義があります。

◆ ~CTmlTextEscape()

virtual ~CTmlTextEscape ( void  )
virtual

デストラクタ

TnbTmlTextEscape.h54 行目に定義があります。

関数詳解

◆ Empty()

void Empty ( void  )

Empty

TnbTmlTextEscape.h59 行目に定義があります。

◆ SetData()

CTmlResult SetData ( LPCSTR  lpszData)

[代入] 文字列を代入.

本インスタンスに指定文字列を格納します。 その際、エスケープシーケンスをチェックします。

引数
lpszData代入文字列
戻り値
結果。 Result_Nop は返りません。

TnbTmlTextEscape.h88 行目に定義があります。

◆ SetHexToData()

CTmlResult SetHexToData ( LPCSTR  lpszData)

[代入] HEX表記文字列を代入.

本インスタンスに指定された文字列を HEX表記として解析し、格納します。

引数
lpszData代入文字列
戻り値
結果。 Result_Nop は返りません。

TnbTmlTextEscape.h99 行目に定義があります。

◆ ToValue()

CTmlValue ToValue ( void  ) const

[取得] CTmlValue 型で取得.

保持しているデータを CTmlValue に変換します。

戻り値
変換後の CTmlValue

TnbTmlTextEscape.h70 行目に定義があります。