2011-08-02 9 views
4

関数Float.of_stringを使用して、公式によって得られた入力を変換していました。文字列の入力...しかし、私の心の中で機能をテストするためにエラーをキャッチする方法

ユーザーが悪者なると、入力中の文章の代わりに、浮動小数点数を書くことができます:)

きっと解決策がたくさんありますが、 float.of_stringは、テストする必要があります。浮動小数点数に変換することは必須です。そして、文字列が浮動小数点数ではないことを示す証拠として、サーバーはサーバーを(または少なくともセッションを)終了させるエラーに到達します。真のその後...

  • 戻るオプション
  • それはセッションを殺す前に、エラーをキャッチする方法

は、次に私が思うに、最高のは、(選択)となりますこの投稿の質問は: OPA uncaught例外のtry/catchブロックのようなことをする方法はありますか? もしそうなら、それはどのように機能し、私たち自身の機能にエラーを投げることが可能ですか?あなたの答えのための

おかげで、[OK]を マチュー

答えて

3

Float.of_stringに関する最初。これは、整形式の入力を前提とする低レベルの関数なので、ユーザーから何かが呼び出されるべきではありません(または実際には失敗する可能性のあるもの)。しかし、あなたはそれを最初に尋ねる人ではないので、実際にはこの関数を変更してオプション型を返さなければならないかもしれません。

このようなシナリオ(状況が悪くなる可能性がある場合)では、代わりに構文解析とRule.float機能を使用する必要があります。 Opaでの構文解析の詳細については、recent blog postを確認してください。明日のフォローアップがあります。

今、例外処理について:私たちはOpaに追加しようとしていましたが、今日ではまだ利用できません。だから...患者になるよ:)

関連する問題