S.E.E.D(Shiori Event Emulator for Developers、SSP Bugtraq)を使うと、ゴーストに任意のイベントを送ることができます。
AYAやYAYAでは、イベントスクリプトと関数はほぼ同じ形で辞書中に記述されますが、関数はイベントではないため、S.E.E.Dから直接動作させることはできません。

デバッグ時など、手軽に関数の動作チェックをしたい時のために、
S.E.E.Dから直接関数を発動させられるようにするイベントを埋め込むと、ちょっとだけ便利です。

OnTestFunction
{
	_funcname = reference0
	_i = 1
	_param = IARRAY
	_paramstr = ''
	for _i=1; _i<8; _i++
	{
	
		_paramstr = EVAL('reference'+TOSTR(_i))
		
		if _paramstr == 'eof'
		{
			break
		}
		
		if _paramstr == ''
		{
			_paramstr = '""'
		}
		
		if ( ISINTSTR(_paramstr) == 1 || ISREALSTR(_paramstr) == 1 ) /
			&& SUBSTR( _paramstr, 0, 1) != '"' /
			&& SUBSTR( _paramstr, STRLEN(_paramstr)-1 , 1) != '"'
		{
			_paramstr = '"' + _paramstr + '"'
		}
		
		_param ,= _paramstr
	}
	
	EVAL(_funcname+'('+TOSTR(_param)+')')

}

このイベントを辞書に追加して、S.E.E.Dから

Ev=OnTestFunction
ref0=関数の名前
ref1=1番目の引数
ref2=2番目の引数
…
ref7=7番目の引数

をゴーストに送ると、関数を直接動作させることができます。
引数が7個に満たない場合、最後の引数の次の欄に、「eof」と書くことで、引数の個数を制限できます。

使用上の注意

  • 明示的に文字列型として与えたい引数は、「""」でくくって与えてください。
  • 「eof」という文字列を引数に与えたい場合は、「"eof"」としてください。

トップ   編集 凍結 差分 履歴 添付 複製 名前変更 リロード   新規 一覧 検索 最終更新   ヘルプ   最終更新のRSS
Last-modified: 2007-08-07 (火) 17:02:18