Failure["tag",assoc]
tag で示されたタイプの失敗を,連想 assoc によって与えられる詳細とともに表す.
Failure
Failure["tag",assoc]
tag で示されたタイプの失敗を,連想 assoc によって与えられる詳細とともに表す.
詳細
- Failure[…]["prop"]はFailureオブジェクトから特性を抽出する.Failure[…][{key1,key2,…}]は値のリストを抽出する. »
- Failure[…]["Properties"]は使用可能な特性のリストを返す. »
- 連想 assoc は,一般に以下を含む.
-
"MessageTemplate" メッセージについての文字列テンプレート "MessageParameters" メッセージテンプレートについて使うパラメータ - TemplateApplyを使ってパラメータがメッセージテンプレート有効に挿入される.
- メッセージ名は,メッセージが生成されたときに使うために,項目"MessageTemplate":>symb::name で保存することができる.
- FailureはInterpreterおよび関連関数によって生成される.この場合に考えられるタグには,"InterpretationFailure","RestrictionFailure","ConditionFailure","ConnectionFailure"がある.
例題
すべて開く すべて閉じる例 (2)
Failureが生成される典型的な例:
Interpreter["Integer"]["notnumber"]InputForm[%]Failure["InvalidRange", <|
"MessageTemplate" -> "Enter a number lower than `Number`",
"MessageParameters" -> <|"Number" -> 10|>
|>]スコープ (10)
基本的な用法 (6)
タグだけを使ってFailureを作成する:
Failure["InvalidInput", <||>]Failure["InvalidInput", <|"Message" -> "Input must be a string"|>]Failure["ExternalOperation", <|"MessageTemplate" -> "External operation `1` failed.", "MessageParameters" -> { "file upload"}|>]StringTemplateを使って失敗を示す:
Failure["InvalidRange", <|
"MessageTemplate" -> StringTemplate["Enter a number lower than `Number`"],
"MessageParameters" -> <|"Number" -> 10|>|>]MessageNameを使って失敗を示す:
MyFunc::nvldrange = "Enter a number greater than `Number`";
Failure["InvalidRange", <|"MessageTemplate" -> MyFunc::nvldrange,
"MessageParameters" -> <|"Number" -> 10|>|>]Failureはメタデータを含むことができる:
Failure["RestrictionFailure",
<|"MessageTemplate" :> Interpreter::numberinterval,
"MessageParameters" -> <|"Min" -> "1", "Max" -> "10", "Input" -> {"100"}|>,
"Interval" -> Interval[{1, 10}],
"Input" -> {"100"},
"Type" -> "Number"|>
]特性 (4)
f = Failure["RestrictionFailure", Association["MessageTemplate" :> Interpreter::numberinterval,
"MessageParameters" -> Association["Min" -> "1", "Max" -> "10", "Input" -> {"100"}],
"Interval" -> Interval[{1, 10}], "Input" -> {"100"}, "Type" -> "Number"]];f["Properties"]f["Input"]f = Failure["RestrictionFailure", Association["MessageTemplate" :> Interpreter::numberinterval,
"MessageParameters" -> Association["Min" -> "1", "Max" -> "10", "Input" -> {"100"}],
"Interval" -> Interval[{1, 10}], "Input" -> {"100"}, "Type" -> "Number"]];f[{"MessageTemplate", "MessageName", "MessageParameters"}]f = Failure["RestrictionFailure", Association["MessageTemplate" :> Interpreter::numberinterval,
"MessageParameters" -> Association["Min" -> "1", "Max" -> "10", "Input" -> {"100"}],
"Interval" -> Interval[{1, 10}], "Input" -> {"100"}, "Type" -> "Number"]];f["HeldMessageTemplate"]f = Failure["RestrictionFailure", Association["MessageTemplate" :> Interpreter::numberinterval,
"MessageParameters" -> Association["Min" -> "1", "Max" -> "10", "Input" -> {"100"}],
"Interval" -> Interval[{1, 10}], "Input" -> {"100"}, "Type" -> "Number"]];f["Message"]f["StyledMessage"]特性と関係 (4)
ToStringを使ってフォーマットされたメッセージを得る:
f = Interpreter["Number"]["hello"];f // ToStringf["Message"]Failureは,SendMailやEntityPrefetch等の関数によって返される:
EntityPrefetch["NoSuchEntity"]これらの関数については,Failureの逆はSuccessである:
EntityPrefetch["Planet"]FailureQ[Failure["InterpretationFailure", Association["MessageTemplate" :> Interpreter::number,
"MessageParameters" -> Association["Input" -> "notnumber"], "Input" -> "notnumber",
"Type" -> "Integer"]]]AssociationをRuleと一緒に使うと,評価された式がFailure式に埋め込まれる:
MyFunc::nvldrange = "Enter a number greater than `Number`";Failure["InvalidRange", <|"MessageTemplate" -> MyFunc::nvldrange|>];
%["HeldMessageTemplate"]RuleDelayedを使って評価されないようにする:
Failure["InvalidRange", <|"MessageTemplate" :> MyFunc::nvldrange|>];
%["HeldMessageTemplate"]おもしろい例題 (1)
Failure式の全特性でデータ集合を生成する:
f = Failure["RestrictionFailure", Association["MessageTemplate" :> Interpreter::numberinterval,
"MessageParameters" -> Association["Min" -> "1", "Max" -> "10", "Input" -> {"100"}],
"Interval" -> Interval[{1, 10}], "Input" -> {"100"}, "Type" -> "Number"]];AssociationMap[f, f["Properties"]]//Dataset関連するガイド
-
▪
- フォームインターフェースとアプリの作成 ▪
- 即時APIの作成 ▪
- パッケージの開発 ▪
- 入力解釈機能の設定 ▪
- メッセージ ▪
- 自由形式入力と外部入力 ▪
- ロバスト性とエラー処理 ▪
- 電子メールの自動処理
テキスト
Wolfram Research (2014), Failure, Wolfram言語関数, https://reference.wolfram.com/language/ref/Failure.html.
CMS
Wolfram Language. 2014. "Failure." Wolfram Language & System Documentation Center. Wolfram Research. https://reference.wolfram.com/language/ref/Failure.html.
APA
Wolfram Language. (2014). Failure. Wolfram Language & System Documentation Center. Retrieved from https://reference.wolfram.com/language/ref/Failure.html
BibTeX
@misc{reference.wolfram_2026_failure, author="Wolfram Research", title="{Failure}", year="2014", howpublished="\url{https://reference.wolfram.com/language/ref/Failure.html}", note=[Accessed: 14-September-2026]}
BibLaTeX
@online{reference.wolfram_2026_failure, organization={Wolfram Research}, title={Failure}, year={2014}, url={https://reference.wolfram.com/language/ref/Failure.html}, note=[Accessed: 14-September-2026]}