sounisi5011 / vec-draw

[WIP] SVGを書きやすくするDSL
0 stars 0 forks source link

TypeScriptへの移行 #16

Closed sounisi5011 closed 5 years ago

sounisi5011 commented 5 years ago

目的

ソースコードをECMAScriptからTypeScriptに変更する。この変更により、適切な型定義を導入する。

sounisi5011 commented 5 years ago

linttestbuildも正常に動くようになった。そろそろ完了しても良いのではないだろうか。

sounisi5011 commented 5 years ago

linttestbuildも正常に動くようになった。そろそろ完了しても良いのではないだろうか。

ts-pegjsは導入しなくても良いのだろうか?

sounisi5011 commented 5 years ago

linttestbuildも正常に動くようになった。そろそろ完了しても良いのではないだろうか。

ts-pegjsは導入しなくても良いのだろうか?

以上の点から、ts-pegjsの導入は別のブランチで進めるべきだと考える。

sounisi5011 commented 5 years ago

linttestbuildも正常に動くようになった。そろそろ完了しても良いのではないだろうか。

ts-pegjsは導入しなくても良いのだろうか?

軽く試してみたが、返り値のほとんどがany型で、使うにはそれなりの修正が必要そうだ。生成されるコードはしっかりとTypeScriptだったが、anyに依存しすぎている。

加えて、expected()関数の引数がstringしか受け付けない。これはPEG.jsの内部実装から考えると当然の型指定だが、このプロジェクトでは引数にオブジェクトを渡してしまっている。 この部分を改善し、正しい実装を考えるなら、パーサ内部からErrorオブジェクトをthrowすべきだ。 そのような大規模な変更を、この一つのコミットのみで行うのはいい案ではない。

sounisi5011 commented 5 years ago

linttestbuildも正常に動くようになった。そろそろ完了しても良いのではないだろうか。

ts-pegjsは導入しなくても良いのだろうか?

軽く試してみたが、返り値のほとんどがany型で、使うにはそれなりの修正が必要そうだ。生成されるコードはしっかりとTypeScriptだったが、anyに依存しすぎている。

returnTypesオプションというものがあってだな

sounisi5011 commented 5 years ago

テストはクリアした。マージする。