しょぼいマシンで自作プログラミング言語を作ってみる (21)

UTF-32での字句解析にあたって(4)

リファクタリングを実施。

 これまでに作った文字コード検知、文字コード変換処理、コマンドライン引数変換処理などについて、リファクタリングを実施しました。
 マジックナンバーを極力、定数に抜き出しました。
 テストも充実させました。

トークンのストリームクラスを作成

 字句解析結果のトークンを保持するクラスにはTokenクラスがあります。それらをまとめて保持するクラスにはTokensクラスがあります。
 そのTokensクラスから1トークンずつ処理するためのクラスとして、TokensInputStreamクラスを用意しました。

 ByteArrayInputStreamクラスのようにread()、current()、skip()などのメソッドを用意しました。

 とりあえず、今回の記事はここまで。次回こそ、UTF-32での字句解析処理について触れることができるかと思います。
 そうそう、字句解析において、方針を転換するつもりです。
 識別子の扱いですが、数字から始まる識別子はやっぱり不許可とするつもりです。その理由については次回の記事にて触れます。

いいなと思ったら応援しよう!