CompilerRuntimeErrorAction
FunctionCompileのオプションで,低レベルコードで計算中に回復不能なエラーが起こった場合に行うべきことを決定する.
詳細
- デフォルト設定のAutomaticのとき,コンパイラに特有のコードを避ける場合はWolfram Engineを使って計算が再度実行される.
- 以下は,CompilerRuntimeErrorActionの可能な設定である.
-
Automatic コンパイラ特有のコードを避ける場合にWolfram Engineで計算を再実行する "Evaluate" 常にWolfram Engineで計算を再実行する None エラーを表す失敗オブジェクトを返す fun fun を失敗オブジェクトに適用してその結果を返す
例題
例 (3)
デフォルトのCompilerRuntimeErrorActionでコンパイルされたコードを生成する:
整数のオーバーフローによるエラーがあるため,計算は評価器によって再実行される:
CompilerRuntimeErrorActionをNoneに設定してコンパイルされたコードを生成する:
こうすると,エラーはWolfram Engineで再実行されず,代りにFailureが返される:
関数がコンパイラに特有のコードを含む場合,デフォルト設定のCompilerRuntimeErrorActionは評価器では実行されない:
CompilerRuntimeErrorActionをNoneに設定してコンパイルされたコードを生成する:
こうすると,エラーはWolfram Engineでは再実行されない:
CompilerRuntimeErrorActionを"Evaluate"に設定することは,エラーが起こった場合に計算が評価器で再実行されることを意味する:
こうすると,エラーがWolfram Engineで再実行される:
CompilerRuntimeErrorActionは関数を失敗オブジェクトに適用できる:
テキスト
Wolfram Research (2024), CompilerRuntimeErrorAction, Wolfram言語関数, https://reference.wolfram.com/language/ref/CompilerRuntimeErrorAction.html.
CMS
Wolfram Language. 2024. "CompilerRuntimeErrorAction." Wolfram Language & System Documentation Center. Wolfram Research. https://reference.wolfram.com/language/ref/CompilerRuntimeErrorAction.html.
APA
Wolfram Language. (2024). CompilerRuntimeErrorAction. Wolfram Language & System Documentation Center. Retrieved from https://reference.wolfram.com/language/ref/CompilerRuntimeErrorAction.html