フォーマッター(続き)
フォーマッターでは、記述されたコードの構造の解析だけを行い、
コードのタイプ(PAR2、PAR3)や暗号化状態は共通ルーチンで行う。
フォーマッターでのコード解析も、共通化した構造体に文字列を格納していくようにした。
この構造体から、共通ルーチンでコードタイプなどを解析する。
このような、作りにしておくと次のようなメリットが出てくる。
1.フォーマッターの作りが簡単になり、ソースコードの可読性が向上する。
そのため、バグが減少。
2.構造解析以外を共通にすることで、全フォーマッターが同等の機能を持てる。
現状のように一般用だけ機能向上するのではなく、他のものも同時に機能向上が可能になる。
3.共通する箇所が増えることで、個別の部分が減り、作成が容易になる。
また、バグを減らす要因にもなる。
タイプの解析は、コードを見て考えられるパターンを全て返すようにした。
しかし、PAR3復号化コードは、PAR2暗号化/復号化と区別がつかない。
従って、フォーマッターで、対応するタイプをヒントとして渡すことで最終的な判定をする。
一般用フォーマッターは、PAR2の暗号化/復号化を自動判別するので、復号化用フォーマッターは意味がなくなった。
その代わり、PAR3形式限定フォーマッターを追加することにした。
これは、PAR3暗号化/復号化を自動判別するもの。
PAR2用コードがあっても、PAR3復号化と認識する。
自然用フォーマッターも変形が強化され、ほとんど手を加えなくてもよくなりそうだ。
あと、もう少し、いろいろなパターンを試したら完成すると思う。
リリースはやはり7月10日にするつもり。
(基本的にリリースは10日ということにしている)
コードのタイプ(PAR2、PAR3)や暗号化状態は共通ルーチンで行う。
フォーマッターでのコード解析も、共通化した構造体に文字列を格納していくようにした。
この構造体から、共通ルーチンでコードタイプなどを解析する。
このような、作りにしておくと次のようなメリットが出てくる。
1.フォーマッターの作りが簡単になり、ソースコードの可読性が向上する。
そのため、バグが減少。
2.構造解析以外を共通にすることで、全フォーマッターが同等の機能を持てる。
現状のように一般用だけ機能向上するのではなく、他のものも同時に機能向上が可能になる。
3.共通する箇所が増えることで、個別の部分が減り、作成が容易になる。
また、バグを減らす要因にもなる。
タイプの解析は、コードを見て考えられるパターンを全て返すようにした。
しかし、PAR3復号化コードは、PAR2暗号化/復号化と区別がつかない。
従って、フォーマッターで、対応するタイプをヒントとして渡すことで最終的な判定をする。
一般用フォーマッターは、PAR2の暗号化/復号化を自動判別するので、復号化用フォーマッターは意味がなくなった。
その代わり、PAR3形式限定フォーマッターを追加することにした。
これは、PAR3暗号化/復号化を自動判別するもの。
PAR2用コードがあっても、PAR3復号化と認識する。
自然用フォーマッターも変形が強化され、ほとんど手を加えなくてもよくなりそうだ。
あと、もう少し、いろいろなパターンを試したら完成すると思う。
リリースはやはり7月10日にするつもり。
(基本的にリリースは10日ということにしている)
Comments