]> git.pld-linux.org Git - packages/sqlite3.git/commitdiff
- a tiny, but useful function
authorMichał Łukaszek <mlukaszek+pld@gmail.com>
Sun, 16 Oct 2005 22:32:23 +0000 (22:32 +0000)
committercvs2git <feedback@pld-linux.org>
Sun, 24 Jun 2012 12:13:13 +0000 (12:13 +0000)
Changed files:
    sqlite3-sign-function.patch -> 1.1

sqlite3-sign-function.patch [new file with mode: 0644]

diff --git a/sqlite3-sign-function.patch b/sqlite3-sign-function.patch
new file mode 100644 (file)
index 0000000..8e7745e
--- /dev/null
@@ -0,0 +1,43 @@
+diff -uNr sqlite-3.2.7.orig/src/func.c sqlite-3.2.7/src/func.c
+--- sqlite-3.2.7.orig/src/func.c       2005-09-17 18:34:55.000000000 +0200
++++ sqlite-3.2.7/src/func.c    2005-10-17 00:11:22.000000000 +0200
+@@ -139,6 +139,31 @@
+ }
+ /*
++** Implementation of the sign() function
++*/
++static void signFunc(sqlite3_context *context, int argc, sqlite3_value **argv){
++  assert( argc==1 );
++  switch( sqlite3_value_type(argv[0]) ){
++    case SQLITE_INTEGER: {
++      i64 iVal = sqlite3_value_int64(argv[0]);
++      iVal = (iVal > 0)? 1 : (iVal < 0)? -1 : 0;
++      sqlite3_result_int64(context, iVal);
++      break;
++    }
++    case SQLITE_NULL: {
++      sqlite3_result_null(context);
++      break;
++    }
++    default: {
++      double rVal = sqlite3_value_double(argv[0]);
++      rVal = (rVal > 0)? 1.0 : (rVal < 0)? -1.0 : 0;
++      sqlite3_result_double(context, rVal);
++      break;
++    }
++  }
++}
++
++/*
+ ** Implementation of the substr() function
+ */
+ static void substrFunc(
+@@ -963,6 +988,7 @@
+     { "substr",             3, 0, SQLITE_UTF16LE, 0, sqlite3utf16Substr },
+ #endif
+     { "abs",                1, 0, SQLITE_UTF8,    0, absFunc    },
++      { "sign",               1, 0, SQLITE_UTF8,    0, signFunc   },
+     { "round",              1, 0, SQLITE_UTF8,    0, roundFunc  },
+     { "round",              2, 0, SQLITE_UTF8,    0, roundFunc  },
+     { "upper",              1, 0, SQLITE_UTF8,    0, upperFunc  },
This page took 0.041771 seconds and 4 git commands to generate.