[Groonga-commit] groonga/grnxx at 918cbb5 [master] Add ExpressionOptions.

Back to archive index

susumu.yata null+****@clear*****
Mon Jun 23 14:57:21 JST 2014


susumu.yata	2014-06-23 14:57:21 +0900 (Mon, 23 Jun 2014)

  New Revision: 918cbb51dbd4e63cabfd12f832f9728606351928
  https://github.com/groonga/grnxx/commit/918cbb51dbd4e63cabfd12f832f9728606351928

  Message:
    Add ExpressionOptions.

  Modified files:
    new-interface/expression-builder.hpp

  Modified: new-interface/expression-builder.hpp (+42 -0)
===================================================================
--- new-interface/expression-builder.hpp    2014-06-20 16:54:43 +0900 (2fa6dcf)
+++ new-interface/expression-builder.hpp    2014-06-23 14:57:21 +0900 (bc2360c)
@@ -5,6 +5,48 @@
 
 namespace grnxx {
 
+enum DivisionByZeroHandling {
+  // TODO:
+  // - 失敗する.
+  // - デフォルト値にする.
+};
+
+enum OverflowHandling {
+  // TODO:
+  // - 失敗する.
+  // - デフォルト値にする.
+  // - 無視する(動作は未定義になる).
+  //  - INT64_MIN / -1 は無視すると落ちるので無視できない.
+};
+
+enum NullHandling {
+  // TODO
+  // 失敗する.
+  // 参照先のデフォルト値にする.
+};
+
+enum NaNHandling {
+  // TODO
+  // 失敗する.
+  // 参照先のデフォルト値にする.
+};
+
+struct ExpressionOptions {
+  // ゼロによる除算の扱い.
+  DivisionByZeroHandling division_by_zero_handling;
+
+  // オーバーフローの扱い.
+  OverflowHandling overflow_handling;
+
+  // NULL 参照の扱い.
+  NullHandling null_handling;
+
+  // NaN の扱い.
+  NaNHandling nan_handling;
+
+  ExpressionOptions();
+};
+
 // 後置記法(逆ポーランド記法)に基づいて式のオブジェクトを構築する.
 class ExpressionBuilder {
  public:
-------------- next part --------------
HTML����������������������������...
下载 



More information about the Groonga-commit mailing list
Back to archive index