8 namespace utf8_string {
23 // 非終端記号、及び終端記号を表すクラス。
24 // それぞれを取得するためのインターフェースはこれから派生して作成される。
28 // 終端記号、非終端記号のIDを取得する。
29 virtual const LexemeID getID() const = 0;
31 // stringのデータ型において、文字列を取得する。
32 virtual smart_ptr<utakata::utf8_string::UTF8String> toString() const = 0;
34 // リテラルとして扱うためのデータを取得する。各リテラルのうち、
35 // lexeme Datumとして扱うことができるデータについてはこれらとなる。
36 virtual smart_ptr<literal::LiteralData> getData() const = 0;
43 #endif /* _LEXEME_H_ */