ソースファイル
CookerのRiceソースファイル
CookerはWebページ操作のためのアプリケーションです。ページの操作はRiceで記述されたスクリプトを実行することで行います。
Riceソースファイルに共通する、ソースファイルが備えるべき要件については、以下のリンクを参照してください。
以下のセクションで、CookerのRiceソースファイルが、特に備えるべき要件について説明します。
.cook 拡張子
Cookerから直接に呼び出されるソースファイルは、.cook 拡張子を持たなければなりません。これ以外の拡張子を持つRiceソースファイルを、Cookerから呼び出すことは出来ません。
ただし、.cook 以外の拡張子を持つRiceソースファイルが、.cook の拡張子を持つRiceソースファイルに import されることは可能です。
main クラス
.cook ファイルから始まるRiceソースファイルの読み込みの中で、main クラスが一度だけ定義される必要があります。
main クラスは .cook ファイル内に定義される必要はありません。しかしながら、.cook ファイル内に定義することをお勧めします。
start() メソッド
main クラスには、実行のentryポイントとなるメソッドを定義しなくてはいけません。以下のメソッドがentryポイントになります。
open method void start(browser)
open method void start()
entryポイントについては後述します。
end() メソッド
main クラスには、実行のexitポイントとなるメソッドを定義することが出来ます。以下のメソッドがexitポイントになります。
open method void end(browser)
open method void end()
exitポイントを定義するがどうかは任意です。
exitポイントについては後述します。
JavaScriptソースファイル
CookerはJavaScriptを直接実行できます。Riceを経由しない実行です。
.js 拡張子
直接実行されるJavaScriptソースファイルは、.js 拡張子を持たなければなりません。
変換命令
CookerのJavaScriptには拡張機能が用意されています。拡張機能を利用するためには認証のための特別な文字列が必要です。この認証用文字列は即時関数への変換と同時に与えられます。
直接実行ではJavaScriptコードの中に命令を直接書き込むことで変換を行います。"///immed"と"///async"が変換命令です。JavaScriptコードの先頭が、これらの文字列ならば即時関数への変換が行われます。
1: | alert(token); |
上記のJavaScriptコードに///immedを付与します。
1: | ///immed |
2: | alert(token); |
変換は以下の様になります。1行目と4行目が付加されます。
1: | (function(token){ |
2: | ///immed |
3: | alert(token); |
4: | }("0f8fbd59d9cb769fa16570867728950e")); |
上記のJavaScriptコードに///asyncを付与します。
1: | ///async |
2: | alert(token); |
変換は以下の様になります。1行目と4行目が付加されます。
1: | (async function(token){ |
2: | ///async |
3: | alert(token); |
4: | }("0f8fbd59d9cb769fa16570867728950e")); |