From ab2f1f9560543d73d4ebbf1e1a8b896e83e3d324 Mon Sep 17 00:00:00 2001 From: drh Date: Mon, 11 Jan 2010 18:26:42 +0000 Subject: [PATCH] Add a few documentation evidence comments to the built-in function implementations. FossilOrigin-Name: 8bd0f8147dbf75367243b3eecfb705da6e794ab7 --- manifest | 24 +++++++++++++++++------- manifest.uuid | 2 +- src/func.c | 22 +++++++++++++++++----- 3 files changed, 35 insertions(+), 13 deletions(-) diff --git a/manifest b/manifest index 6151352c0e..b46ce27c18 100644 --- a/manifest +++ b/manifest @@ -1,5 +1,8 @@ -C Modify\ssnippets\scode\sto\srun\smore\sefficiently.\sAnd\sto\savoid\sa\sbug\srelating\sto\ssnippets\sbased\son\sfull-text\squeries\sthat\scontain\sduplicate\sterms. -D 2010-01-11T12:00:48 +-----BEGIN PGP SIGNED MESSAGE----- +Hash: SHA1 + +C Add\sa\sfew\sdocumentation\sevidence\scomments\sto\sthe\sbuilt-in\sfunction\s\nimplementations. +D 2010-01-11T18:26:42 F Makefile.arm-wince-mingw32ce-gcc fcd5e9cd67fe88836360bb4f9ef4cb7f8e2fb5a0 F Makefile.in c5827ead754ab32b9585487177c93bb00b9497b3 F Makefile.linux-gcc d53183f4aa6a9192d249731c90dbdffbd2c68654 @@ -119,7 +122,7 @@ F src/delete.c 610dc008e88a9599f905f5cbe9577ac9c36e0581 F src/expr.c b186cb2a2bab8fae4bbee4582a1c92cfc8d6aad3 F src/fault.c 160a0c015b6c2629d3899ed2daf63d75754a32bb F src/fkey.c e2116672a6bd610dc888e27df292ebc7999c9bb0 -F src/func.c 69906340991919b4933dd8630774ad069e4d582e +F src/func.c 7cd1b3abad8bcccf555fad9274d608da972467a3 F src/global.c 75946a4a2ab41c6ae58f10ca0ed31b3449694b26 F src/hash.c 458488dcc159c301b8e7686280ab209f1fb915af F src/hash.h 2894c932d84d9f892d4b4023a75e501f83050970 @@ -785,7 +788,14 @@ F tool/speedtest2.tcl ee2149167303ba8e95af97873c575c3e0fab58ff F tool/speedtest8.c 2902c46588c40b55661e471d7a86e4dd71a18224 F tool/speedtest8inst1.c 293327bc76823f473684d589a8160bde1f52c14e F tool/vdbe-compress.tcl d70ea6d8a19e3571d7ab8c9b75cba86d1173ff0f -P 14dc46a74aafe44c0bf7dffd26268395b2c5edb2 -R 400acb68bff0c67f9d3c184630804917 -U dan -Z d8fdb287511f28eb0b92ee0535b223e5 +P a2b1183d9e9898d06d623b342bbb552e85a9b3f6 +R 46f4dcf6ec2cb691894cdd8d9b71e8a0 +U drh +Z cf904688820a6d52eba284b60c049013 +-----BEGIN PGP SIGNATURE----- +Version: GnuPG v1.4.6 (GNU/Linux) + +iD8DBQFLS21moxKgR168RlERAv4fAJ9y6E6zgCvqUiDBxAI3g4LOWdeIzQCfRTyH +M+noBTgcZxBSkO+AmAlxTVk= +=gvnT +-----END PGP SIGNATURE----- diff --git a/manifest.uuid b/manifest.uuid index 56e8c15806..7e2465763a 100644 --- a/manifest.uuid +++ b/manifest.uuid @@ -1 +1 @@ -a2b1183d9e9898d06d623b342bbb552e85a9b3f6 \ No newline at end of file +8bd0f8147dbf75367243b3eecfb705da6e794ab7 \ No newline at end of file diff --git a/src/func.c b/src/func.c index 3227dca3f7..c1d3e9060f 100644 --- a/src/func.c +++ b/src/func.c @@ -440,12 +440,18 @@ static void last_insert_rowid( ){ sqlite3 *db = sqlite3_context_db_handle(context); UNUSED_PARAMETER2(NotUsed, NotUsed2); + /* IMP: R-51513-12026 The last_insert_rowid() SQL function is a + ** wrapper around the sqlite3_last_insert_rowid() C/C++ interface + ** function. */ sqlite3_result_int64(context, sqlite3_last_insert_rowid(db)); } /* -** Implementation of the changes() SQL function. The return value is the -** same as the sqlite3_changes() API function. +** Implementation of the changes() SQL function. +** +** IMP: R-62073-11209 The changes() SQL function is a wrapper +** around the sqlite3_changes() C/C++ function and hence follows the same +** rules for counting changes. */ static void changes( sqlite3_context *context, @@ -468,6 +474,8 @@ static void total_changes( ){ sqlite3 *db = sqlite3_context_db_handle(context); UNUSED_PARAMETER2(NotUsed, NotUsed2); + /* IMP: R-52756-41993 This function is a wrapper around the + ** sqlite3_total_changes() C/C++ interface. */ sqlite3_result_int(context, sqlite3_total_changes(db)); } @@ -735,7 +743,9 @@ static void versionFunc( sqlite3_value **NotUsed2 ){ UNUSED_PARAMETER2(NotUsed, NotUsed2); - sqlite3_result_text(context, sqlite3_version, -1, SQLITE_STATIC); + /* IMP: R-48699-48617 This function is an SQL wrapper around the + ** sqlite3_libversion() C-interface. */ + sqlite3_result_text(context, sqlite3_libversion(), -1, SQLITE_STATIC); } /* @@ -749,7 +759,9 @@ static void sourceidFunc( sqlite3_value **NotUsed2 ){ UNUSED_PARAMETER2(NotUsed, NotUsed2); - sqlite3_result_text(context, SQLITE_SOURCE_ID, -1, SQLITE_STATIC); + /* IMP: R-24470-31136 This function is an SQL wrapper around the + ** sqlite3_sourceid() C interface. */ + sqlite3_result_text(context, sqlite3_sourceid(), -1, SQLITE_STATIC); } /* Array for converting from half-bytes (nybbles) into ASCII hex @@ -878,7 +890,7 @@ static void zeroblobFunc( if( n>db->aLimit[SQLITE_LIMIT_LENGTH] ){ sqlite3_result_error_toobig(context); }else{ - sqlite3_result_zeroblob(context, (int)n); + sqlite3_result_zeroblob(context, (int)n); /* IMP: R-00293-64994 */ } }