/* Page prose (ja) */
"GettingAValueBack" = "# 値を取り戻す\n\nタスクは値を*返す*ことができ、その `value` プロパティを `await` することで読み取ります。処理がまだ実行中かもしれないので、値を読み取ること自体が `await` になります。";
"GettingAValueBack-2" = "**実行して確認:** まず `Order placed...` が表示され、次に少し間があり、それから `Served: a double espresso` が表示されます。外側のタスクは `await order.value` で中断し、内側のタスクが結果を生み出すまで待ってから、中断したまさにその場所で再開しました。\n\nタスクがスロー（throw）する可能性がある場合、`value` もスローするので、`try await task.value` と書きます。`do-try-catch` を使わずに結果を検査したいときは、`task.result` を使いましょう。これは `switch` で分岐できる `Result` を返してくれます。\n\n```swift\nenum BarError: Error { case outOfBeans }\n\nTask {\n    let order = Task { () -> String in\n        try await Task.sleep(for: .milliseconds(200))\n        throw BarError.outOfBeans\n    }\n\n    switch await order.result {\n    case .success(let cup): print(\"Served: \\(cup)\")\n    case .failure(let error): print(\"Couldn't serve: \\(error)\")\n    }\n}\n```\n\n`await order.result` は決してスローしません。エラーは `Result` の*中*にあります。`Couldn't serve: outOfBeans` と表示されます。\n\n[前へ](@previous)  |  3 / 11 ページ  |  [次へ: 構造化 vs 非構造化](@next)";
