背景を少々。XML のサブセットであるテンプレート言語用のパーサーを作成しています。既存のパーサーを使用する代わりに独自のパーサーを作成する理由は本当ですが、ここで説明する価値はありません。
私のパーサーは文字列内の文字を繰り返し処理し、新しいタグの開始、既存のタグの終了などを検出するとモードを切り替えます (基本的には有限状態マシンです)。
私が知りたいのは、タグ オープナー、タグ クローザー、および終了スラッシュ文字を格納する定数に付ける名前です。(私はちょうどそこでそれらに名前を付けたことを知っていますが、私はこれらの名前に不満があります)
したがって、これについて:
<MyTag attr="foo" />
次の文字を実際に何と呼んでいますか (解析のコンテキストで):
<
>
/
私は特に「タグクローザー」に問題があります。それは本当に</MyTag>
あいまい/
です>
. 私が何を意味するか分かりますか?すべてに明確に名前を付けたいと思います。
明確にするために:私はそれらの文字が何と呼ばれているかを知っています。実際には、文字の実際の名前ではなく、それらの文字がパーサーに何をさせるかを説明する動詞を求めています。言語が実際に次のように書かれているとします[Mytag attr=/foo/ #]
。モードスイッチをトリガーする文字が異なるだけで、同じ言語です。