概要


※上記の広告は60日以上更新のないWIKIに表示されています。更新することで広告が下部へ移動します。

概要

KLCSは構文を新たに追加することで、KLCS自体を拡張することが可能となっています。
例えば、KLCSがサポートしていない構文あるいはKLCSで足りない部分などがあった場合、
プログラマ自身がチューニングを行い、その場その場で必要な構文を揃えることを目的に
KLCSのAPIの提供を行っています。

構文を拡張する

構文の拡張はInterpreter.Construction.Element名前空間下に
Interpreter.Construction.BaseConstructionクラスを継承することで
追加することが可能となっています。

継承を行ったクラスはコンストラクタ及びInvoke関数を実装することで、
利用することが可能となります。
Invoke関数でどのように処理を続行させるかは
InvokeResultを返すことによってエンジン側で判断します。

構文と構文を協調させる

Invoke関数ではConstructionContainer.Accessorクラスを引数として受け取っています。
ConstructionContainer.Accessorでは中間フォーマットから起こした構文を順番に格納されています。
これらの構文にアクセスするにはConstructionContainer.Accessorを利用します。