スクリプト制御#
実行をブロック#
- sleep(秒数)#
- 指定した秒数の間スクリプトの実行をブロックします
- パラメータ:
秒数 (数値) -- スクリプトの実行を停止する秒数
- sleep(関数)
- 関数がTRUEを返す限り実行をブロックします
- パラメータ:
関数 (ユーザー定義関数) -- 条件判定を行う関数
動的評価#
- eval(構文)#
- 渡された文字列をUWSCRの構文として評価します式として評価された場合はその結果の値を返します
- パラメータ:
構文 (文字列) -- UWSCRの構文を表す文字列
- 戻り値:
式が評価された場合はその実行結果の
値
、文が評価された場合はEMPTY
サンプルコード
a = 1 eval("a = 5") // = で代入できる for i = 0 to 3 print a eval("if a > 3 then a -= 1 else a += 1") // 単行IF next print a
エラー発生#
- raise(エラーメッセージ, タイトル=規定のタイトル)#
- 実行時エラーを故意に発生させます
- パラメータ:
エラーメッセージ (文字列) -- エラー内容を示す文字列
タイトル (文字列 省略可) -- エラーのタイトル
- 戻り値:
なし
サンプルコード
try print 1 raise("エラーが発生しました") print 2 except print TRY_ERRMSG endtry
# 結果 1 [ユーザー定義エラー] エラーが発生しました
- assert_equal(値1, 値2)#
- 2つの値を比較し、一致していない場合は実行時エラーになります
- パラメータ:
値1 (値) -- 任意の値
値2 (値) -- 比較する値
- 戻り値:
なし
サンプルコード
dim a = 5, b = a, c = a * 2 assert_equal(a, b) // 一致するので何も起こらない assert_equal(b, c) // [assert_equalエラー] left: 5; right: 10
タスク#
- Task(func[, args, ...])#
- 関数を非同期に実行し、実行中の状態をタスクとして返します
await実行した場合
Task関数自体をawaitで実行した場合は関数の終了を待ちその戻り値を返します
- WaitTask(task)#
- タスク の完了を待ち、関数の戻り値を得ますPromiseに相当する RemoteObject を受けた場合はそのPromiseの完了を待ち RemoteObject を返します
Promise以外はエラー
RemoteObject がPromiseではない場合エラーで終了します- パラメータ:
task (タスク) -- 未完了の タスク, または RemoteObject
- 戻り値:
タスク として実行していた関数の戻り値、または RemoteObject
サンプルコード
function MyTask(wait: number) for i = 1 to wait sleep(1) print "タスク実行中: " + (wait - i) next result = "タスク実行完了: <#wait>秒待ちました" fend t = Task(MyTask, 5) print "タスクを開始しました" print "タスクは非同期で実行されるため、その間別の処理を行えます" print "WaitTaskを呼ぶと処理をブロックし、タスクの完了を待ちます" print "タスクが完了すると関数のresult値を得られます" print WaitTask(t) // タスク実行完了: 5秒待ちました
型チェック#
- type_of(値)#
- 値の型を返します
- パラメータ:
値 (すべて) -- 型を調べたい値や変数
- 戻り値の型:
定数
- 戻り値:
型を示す文字定数
0.15.0時点での型定数
TYPE_NUMBER
TYPE_STRING
TYPE_BOOL
TYPE_ARRAY
TYPE_HASHTBL
TYPE_ANONYMOUS_FUNCTION
TYPE_FUNCTION
TYPE_BUILTIN_FUNCTION
TYPE_ASYNC_FUNCTION
TYPE_MODULE
TYPE_CLASS
TYPE_CLASS_INSTANCE
TYPE_NULL
TYPE_EMPTY
TYPE_NOTHING
TYPE_HWND
TYPE_REGEX
TYPE_UOBJECT
TYPE_VERSION
TYPE_THIS
TYPE_GLOBAL
TYPE_ENUM
TYPE_TASK
TYPE_DLL_FUNCTION
TYPE_STRUCT_DEFINITION
TYPE_STRUCT_INSTANCE
TYPE_COM_OBJECT
TYPE_IUNKNOWN
TYPE_VARIANT
TYPE_SAFEARRAY
TYPE_BROWSERBUILDER_OBJECT
TYPE_BROWSER_OBJECT
TYPE_TABWINDOW_OBJECT
TYPE_REMOTE_OBJECT
TYPE_FILE_ID
TYPE_BYTE_ARRAY
TYPE_REFERENCE
TYPE_WEB_REQUEST
TYPE_WEB_RESPONSE
TYPE_HTML_NODE
TYPE_WEBVIEW_FORM
TYPE_WEBVIEW_REMOTEOBJECT
TYPE_MEMBER_CALLER
TYPE_NOT_VALUE_TYPE