2008-04-01から1ヶ月間の記事一覧

構文エラー処理 (0)

少しずつ書いていきます 実行VMのロケールを見て、日本語と英語でエラーメッセージを出す。 クォート途中で死んだら、その旨通知しる。 コメントの中で死んだら、その旨通知しる。 どんなルールの処理中に死んだのか、通知しる。 エラー処理の方針等を考えて…

文法がわからん…

こんな感じ?SQL部分はかなりいい加減ですが

AST構築時の注意とか

添削する機械。 ツリーは、ちゃんと出来ている。ASTに変換しようとしてコケている。 ... ... ifcomment : (C_ST IF expression C_ED txt (elseifcomment txt)* (elsecomment txt)? endcomment) -> ^(IFNODE ^(EXPRESSIONNODE expression) txt ^(ELSEIFNODE e…

コメント内の文字列を復元

タダね、これだと、実は余りうまくない。 SQL内の空白は、最悪消えても良いのだけど、 コメント内の空白文字は、消えてしまっては困るのです。 何故なら、IFコメントとかのexpression部分は外部の式言語にそのまま食わせるから。 空白のスキップとクォート出…

Tips - String literal in block comments

どこかで役に立てば、という程度の無駄知識。 ポイントは、 /*eLsE ccc + 44 '*/' */ で、コメントが変な風に中断したり 空白のスキップとクォート出来る様にしてみた。 - 設計と実装の狭間で。 というところで、逆にコメントを変な風に中断する方法について…

空白文字のスキップ

引き続き、ASTは、タダじゃ作ってくれない。 - 設計と実装の狭間で。を添削。予想以上に大変。

Lexerとかの挙動

僭越ながら ASTは、タダじゃ作ってくれない。 - 設計と実装の狭間で。 を添削。