Chromium Code Reviews
chromiumcodereview-hr@appspot.gserviceaccount.com (chromiumcodereview-hr) | Please choose your nickname with Settings | Help | Chromium Project | Gerrit Changes | Sign out
(204)

Side by Side Diff: third_party/sqlite/src/src/test_autoext.c

Issue 2751253002: [sql] Import SQLite 3.17.0. (Closed)
Patch Set: also clang on Linux i386 Created 3 years, 9 months ago
Use n/p to move between diff chunks; N/P to move between comments. Draft comments are only viewable by you.
Jump to:
View unified diff | Download patch
« no previous file with comments | « third_party/sqlite/src/src/test_async.c ('k') | third_party/sqlite/src/src/test_backup.c » ('j') | no next file with comments »
Toggle Intra-line Diffs ('i') | Expand Comments ('e') | Collapse Comments ('c') | Show Comments Hide Comments ('s')
OLDNEW
1 /* 1 /*
2 ** 2006 August 23 2 ** 2006 August 23
3 ** 3 **
4 ** The author disclaims copyright to this source code. In place of 4 ** The author disclaims copyright to this source code. In place of
5 ** a legal notice, here is a blessing: 5 ** a legal notice, here is a blessing:
6 ** 6 **
7 ** May you do good and not evil. 7 ** May you do good and not evil.
8 ** May you find forgiveness for yourself and forgive others. 8 ** May you find forgiveness for yourself and forgive others.
9 ** May you share freely, never taking more than you give. 9 ** May you share freely, never taking more than you give.
10 ** 10 **
11 ************************************************************************* 11 *************************************************************************
12 ** Test extension for testing the sqlite3_auto_extension() function. 12 ** Test extension for testing the sqlite3_auto_extension() function.
13 */ 13 */
14 #include "tcl.h" 14 #if defined(INCLUDE_SQLITE_TCL_H)
15 # include "sqlite_tcl.h"
16 #else
17 # include "tcl.h"
18 # ifndef SQLITE_TCLAPI
19 # define SQLITE_TCLAPI
20 # endif
21 #endif
15 #include "sqlite3ext.h" 22 #include "sqlite3ext.h"
16 23
17 #ifndef SQLITE_OMIT_LOAD_EXTENSION 24 #ifndef SQLITE_OMIT_LOAD_EXTENSION
18 SQLITE_EXTENSION_INIT1 25 SQLITE_EXTENSION_INIT1
19 26
20 /* 27 /*
21 ** The sqr() SQL function returns the square of its input value. 28 ** The sqr() SQL function returns the square of its input value.
22 */ 29 */
23 static void sqrFunc( 30 static void sqrFunc(
24 sqlite3_context *context, 31 sqlite3_context *context,
(...skipping 55 matching lines...) Expand 10 before | Expand all | Expand 10 after
80 zErr = sqlite3_mprintf("broken autoext!"); 87 zErr = sqlite3_mprintf("broken autoext!");
81 *pzErrMsg = zErr; 88 *pzErrMsg = zErr;
82 return 1; 89 return 1;
83 } 90 }
84 91
85 /* 92 /*
86 ** tclcmd: sqlite3_auto_extension_sqr 93 ** tclcmd: sqlite3_auto_extension_sqr
87 ** 94 **
88 ** Register the "sqr" extension to be loaded automatically. 95 ** Register the "sqr" extension to be loaded automatically.
89 */ 96 */
90 static int autoExtSqrObjCmd( 97 static int SQLITE_TCLAPI autoExtSqrObjCmd(
91 void * clientData, 98 void * clientData,
92 Tcl_Interp *interp, 99 Tcl_Interp *interp,
93 int objc, 100 int objc,
94 Tcl_Obj *CONST objv[] 101 Tcl_Obj *CONST objv[]
95 ){ 102 ){
96 int rc = sqlite3_auto_extension((void*)sqr_init); 103 int rc = sqlite3_auto_extension((void(*)(void))sqr_init);
97 Tcl_SetObjResult(interp, Tcl_NewIntObj(rc)); 104 Tcl_SetObjResult(interp, Tcl_NewIntObj(rc));
98 return SQLITE_OK; 105 return SQLITE_OK;
99 } 106 }
100 107
101 /* 108 /*
102 ** tclcmd: sqlite3_cancel_auto_extension_sqr 109 ** tclcmd: sqlite3_cancel_auto_extension_sqr
103 ** 110 **
104 ** Unregister the "sqr" extension. 111 ** Unregister the "sqr" extension.
105 */ 112 */
106 static int cancelAutoExtSqrObjCmd( 113 static int SQLITE_TCLAPI cancelAutoExtSqrObjCmd(
107 void * clientData, 114 void * clientData,
108 Tcl_Interp *interp, 115 Tcl_Interp *interp,
109 int objc, 116 int objc,
110 Tcl_Obj *CONST objv[] 117 Tcl_Obj *CONST objv[]
111 ){ 118 ){
112 int rc = sqlite3_cancel_auto_extension((void*)sqr_init); 119 int rc = sqlite3_cancel_auto_extension((void(*)(void))sqr_init);
113 Tcl_SetObjResult(interp, Tcl_NewIntObj(rc)); 120 Tcl_SetObjResult(interp, Tcl_NewIntObj(rc));
114 return SQLITE_OK; 121 return SQLITE_OK;
115 } 122 }
116 123
117 /* 124 /*
118 ** tclcmd: sqlite3_auto_extension_cube 125 ** tclcmd: sqlite3_auto_extension_cube
119 ** 126 **
120 ** Register the "cube" extension to be loaded automatically. 127 ** Register the "cube" extension to be loaded automatically.
121 */ 128 */
122 static int autoExtCubeObjCmd( 129 static int SQLITE_TCLAPI autoExtCubeObjCmd(
123 void * clientData, 130 void * clientData,
124 Tcl_Interp *interp, 131 Tcl_Interp *interp,
125 int objc, 132 int objc,
126 Tcl_Obj *CONST objv[] 133 Tcl_Obj *CONST objv[]
127 ){ 134 ){
128 int rc = sqlite3_auto_extension((void*)cube_init); 135 int rc = sqlite3_auto_extension((void(*)(void))cube_init);
129 Tcl_SetObjResult(interp, Tcl_NewIntObj(rc)); 136 Tcl_SetObjResult(interp, Tcl_NewIntObj(rc));
130 return SQLITE_OK; 137 return SQLITE_OK;
131 } 138 }
132 139
133 /* 140 /*
134 ** tclcmd: sqlite3_cancel_auto_extension_cube 141 ** tclcmd: sqlite3_cancel_auto_extension_cube
135 ** 142 **
136 ** Unregister the "cube" extension. 143 ** Unregister the "cube" extension.
137 */ 144 */
138 static int cancelAutoExtCubeObjCmd( 145 static int SQLITE_TCLAPI cancelAutoExtCubeObjCmd(
139 void * clientData, 146 void * clientData,
140 Tcl_Interp *interp, 147 Tcl_Interp *interp,
141 int objc, 148 int objc,
142 Tcl_Obj *CONST objv[] 149 Tcl_Obj *CONST objv[]
143 ){ 150 ){
144 int rc = sqlite3_cancel_auto_extension((void*)cube_init); 151 int rc = sqlite3_cancel_auto_extension((void(*)(void))cube_init);
145 Tcl_SetObjResult(interp, Tcl_NewIntObj(rc)); 152 Tcl_SetObjResult(interp, Tcl_NewIntObj(rc));
146 return SQLITE_OK; 153 return SQLITE_OK;
147 } 154 }
148 155
149 /* 156 /*
150 ** tclcmd: sqlite3_auto_extension_broken 157 ** tclcmd: sqlite3_auto_extension_broken
151 ** 158 **
152 ** Register the broken extension to be loaded automatically. 159 ** Register the broken extension to be loaded automatically.
153 */ 160 */
154 static int autoExtBrokenObjCmd( 161 static int SQLITE_TCLAPI autoExtBrokenObjCmd(
155 void * clientData, 162 void * clientData,
156 Tcl_Interp *interp, 163 Tcl_Interp *interp,
157 int objc, 164 int objc,
158 Tcl_Obj *CONST objv[] 165 Tcl_Obj *CONST objv[]
159 ){ 166 ){
160 int rc = sqlite3_auto_extension((void*)broken_init); 167 int rc = sqlite3_auto_extension((void(*)(void))broken_init);
161 Tcl_SetObjResult(interp, Tcl_NewIntObj(rc)); 168 Tcl_SetObjResult(interp, Tcl_NewIntObj(rc));
162 return SQLITE_OK; 169 return SQLITE_OK;
163 } 170 }
164 171
165 /* 172 /*
166 ** tclcmd: sqlite3_cancel_auto_extension_broken 173 ** tclcmd: sqlite3_cancel_auto_extension_broken
167 ** 174 **
168 ** Unregister the broken extension. 175 ** Unregister the broken extension.
169 */ 176 */
170 static int cancelAutoExtBrokenObjCmd( 177 static int SQLITE_TCLAPI cancelAutoExtBrokenObjCmd(
171 void * clientData, 178 void * clientData,
172 Tcl_Interp *interp, 179 Tcl_Interp *interp,
173 int objc, 180 int objc,
174 Tcl_Obj *CONST objv[] 181 Tcl_Obj *CONST objv[]
175 ){ 182 ){
176 int rc = sqlite3_cancel_auto_extension((void*)broken_init); 183 int rc = sqlite3_cancel_auto_extension((void(*)(void))broken_init);
177 Tcl_SetObjResult(interp, Tcl_NewIntObj(rc)); 184 Tcl_SetObjResult(interp, Tcl_NewIntObj(rc));
178 return SQLITE_OK; 185 return SQLITE_OK;
179 } 186 }
180 187
181 #endif /* SQLITE_OMIT_LOAD_EXTENSION */ 188 #endif /* SQLITE_OMIT_LOAD_EXTENSION */
182 189
183 190
184 /* 191 /*
185 ** tclcmd: sqlite3_reset_auto_extension 192 ** tclcmd: sqlite3_reset_auto_extension
186 ** 193 **
187 ** Reset all auto-extensions 194 ** Reset all auto-extensions
188 */ 195 */
189 static int resetAutoExtObjCmd( 196 static int SQLITE_TCLAPI resetAutoExtObjCmd(
190 void * clientData, 197 void * clientData,
191 Tcl_Interp *interp, 198 Tcl_Interp *interp,
192 int objc, 199 int objc,
193 Tcl_Obj *CONST objv[] 200 Tcl_Obj *CONST objv[]
194 ){ 201 ){
195 sqlite3_reset_auto_extension(); 202 sqlite3_reset_auto_extension();
196 return SQLITE_OK; 203 return SQLITE_OK;
197 } 204 }
198 205
199 206
(...skipping 12 matching lines...) Expand all
212 cancelAutoExtSqrObjCmd, 0, 0); 219 cancelAutoExtSqrObjCmd, 0, 0);
213 Tcl_CreateObjCommand(interp, "sqlite3_cancel_auto_extension_cube", 220 Tcl_CreateObjCommand(interp, "sqlite3_cancel_auto_extension_cube",
214 cancelAutoExtCubeObjCmd, 0, 0); 221 cancelAutoExtCubeObjCmd, 0, 0);
215 Tcl_CreateObjCommand(interp, "sqlite3_cancel_auto_extension_broken", 222 Tcl_CreateObjCommand(interp, "sqlite3_cancel_auto_extension_broken",
216 cancelAutoExtBrokenObjCmd, 0, 0); 223 cancelAutoExtBrokenObjCmd, 0, 0);
217 #endif 224 #endif
218 Tcl_CreateObjCommand(interp, "sqlite3_reset_auto_extension", 225 Tcl_CreateObjCommand(interp, "sqlite3_reset_auto_extension",
219 resetAutoExtObjCmd, 0, 0); 226 resetAutoExtObjCmd, 0, 0);
220 return TCL_OK; 227 return TCL_OK;
221 } 228 }
OLDNEW
« no previous file with comments | « third_party/sqlite/src/src/test_async.c ('k') | third_party/sqlite/src/src/test_backup.c » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698