TITLE: 鬼車プラグイン(experimental)
AUTHOR: miahmie

●これはなに？

RegExpの正規表現エンジンを鬼車に変更するプラグインです。
吉里吉里Z由来のコードを使用しています。

吉里吉里2と吉里吉里Zの正規表現の仕様差を吸収したい場合に使用してください。
（当然ながらZの方の仕様にあわせることになります）

現状で厳密な動作チェックを行っておりませんので実践投入には
それなりのリスクがあることを予めご承知ください。


●使い方

Plugins.linkでリンクするだけです。
unlinkすると元に戻ります。

機能については 元の RegExp クラスと同様です。
正規表現のルールが若干異なります。
詳細は鬼車の仕様を参照してください。


●コンパイル

onigフォルダに鬼車のソースを展開して置いてください。
http://www.geocities.jp/kosako3/oniguruma/index_ja.html
ver 5.9.5 にてコンパイル／動作確認しています。

premake4にてプロジェクトを作成してください。(vs20xxフォルダ作成済み）
コンパイルには
../tp_stub.*
../00_simplebinder/*
のフォルダ・ファイルが必要です。


●コードについて諸注意

Main.cppからtjsRegExpをincludeし，事前にいくつかの定義を
#define で置き換えて本体とプラグイン側での差異を吸収するという
若干トリッキーな構成になっています。
特にtTJSNativeClassはプラグイン側では定義がないので
独自に実装したtTJSNativeClassForRegExpに置き換えて対応してあります。
	・プラグイン用のNativeClass管理
	・元のRegExp/Array.splitの保存（及び復帰）
	・Array.splitの呼び出しのフックからRegExp.splitを呼び出し
コードを読む場合はその辺に注意してください。


●ライセンス

このプラグインのライセンスは吉里吉里本体および吉里吉里Zに準拠してください。

tjsRegExp.* のファイルは吉里吉里Zのソースを改変したものを使用しています。
Main.cpp の一部のコードは xpressive プラグインのコードを流用しています。


----------------------------------------------------------------------------
吉里吉里Zライセンス:

Copyright (c), W.Dee and contributors All rights reserved.
Contributors
 Go Watanabe, Kenjo, Kiyobee, Kouhei Yanagita, mey, MIK, Takenori Imoto, yun
Kirikiri Z Project Contributors
W.Dee, casper, 有限会社MCF, Biscrat, 青猫, nagai, ルー, 高際 雅之, 永劫,
ゆんゆん探偵, りょうご（今は無きあの星）, AZ-UME, 京 秋人, 
Katsumasa Tsuneyoshi, 小池潤, miahmie, サークル獏, アザナシ, はっしぃ, 
棚中製作所, わっふる/waffle, ワムソフト, TYPE-MOON, 有限会社エムツー
----------------------------------------------------------------------------
ソースコード形式かバイナリ形式か、変更するかしないかを問わず、以下の条件を満
たす場合に限り、再頒布および使用が許可されます。

・ソースコードを再頒布する場合、上記の著作権表示、本条件一覧、および下記免責
  条項を含めること。
・バイナリ形式で再頒布する場合、頒布物に付属のドキュメント等の資料に、上記の
  著作権表示、本条件一覧、および下記免責条項を含めること。
・書面による特別の許可なしに、本ソフトウェアから派生した製品の宣伝または販売
  促進に、組織の名前またはコントリビューターの名前を使用してはならない。

本ソフトウェアは、著作権者およびコントリビューターによって「現状のまま」提供
されており、明示黙示を問わず、商業的な使用可能性、および特定の目的に対する適
合性に関する暗黙の保証も含め、またそれに限定されない、いかなる保証もありませ
ん。著作権者もコントリビューターも、事由のいかんを問わず、損害発生の原因いか
んを問わず、かつ責任の根拠が契約であるか厳格責任であるか（過失その他の）不法
行為であるかを問わず、仮にそのような損害が発生する可能性を知らされていたとし
ても、本ソフトウェアの使用によって発生した（代替品または代用サービスの調達、
使用の喪失、データの喪失、利益の喪失、業務の中断も含め、またそれに限定されな
い）直接損害、間接損害、偶発的な損害、特別損害、懲罰的損害、または結果損害に
ついて、一切責任を負わないものとします。
