しょぼいマシンで自作プログラミング言語を作ってみる (21)
UTF-32での字句解析にあたって(4)
リファクタリングを実施。
これまでに作った文字コード検知、文字コード変換処理、コマンドライン引数変換処理などについて、リファクタリングを実施しました。
マジックナンバーを極力、定数に抜き出しました。
テストも充実させました。
トークンのストリームクラスを作成
字句解析結果のトークンを保持するクラスにはTokenクラスがあります。それらをまとめて保持するクラスにはTokensクラスがあります。
そのTokensクラスから1トークンずつ処理するためのクラスとして、TokensInputStreamクラスを用意しました。
ByteArrayInputStreamクラスのようにread()、current()、skip()などのメソッドを用意しました。
とりあえず、今回の記事はここまで。次回こそ、UTF-32での字句解析処理について触れることができるかと思います。
そうそう、字句解析において、方針を転換するつもりです。
識別子の扱いですが、数字から始まる識別子はやっぱり不許可とするつもりです。その理由については次回の記事にて触れます。