言語ゲーム

とあるエンジニアが嘘ばかり書く日記

Twitter: @propella

アクション実行できるように

ディスクが一杯になってしまった!
この忙しい時に。。。DVD-R 買うか。

  • 今日やる事
    • とりあえずアクション付けてみる。
    • [途中]エラー表示詳しく
    • メソッド名決定アルゴリズムの解析
    • 依存関係の整理(文字列 - パーサ - ツリー - (アクション))
    • アクション別窓で編集
    • インストールスクリプトの作成
  • バグ修正
    • [完]ツリーに非終端記号のシンボル名が出ない
    • [完]クラスカテゴリが指定出来ていない。
    • [完]nonterminal -> terminal 自動検出/変換が上手く行かないバグ
  • コンパイルの方法(よく分からない)
    • parserCompiler createChanges でチェンジ作成
    • parserCompiler compileChanges でチェンジ反映

色々なところに現れる数字を整理してみよう。

  • aSymbolIndex インボルID SmaCCToken>>id SmaCCScanner>>next によりスキャナから取得
  • currentState 状態ID スタックのケツ
  • transitionTable の currentState 行目に現在期待しているトークンIDの列がある。

SmaCCToken の構造
{値 (開始位置, 終了位置, ID)}

  • id シンボルID SmaCCParser>>symbolComment参照、トークンごとのID。スキャナから来る。
  • start 開始位置
  • value