/src/tarantool/src/box/sql/parse_def.h
Line | Count | Source |
1 | | #ifndef TARANTOOL_BOX_SQL_PARSE_DEF_H_INCLUDED |
2 | | #define TARANTOOL_BOX_SQL_PARSE_DEF_H_INCLUDED |
3 | | /* |
4 | | * Copyright 2010-2019, Tarantool AUTHORS, please see AUTHORS file. |
5 | | * |
6 | | * Redistribution and use in source and binary forms, with or |
7 | | * without modification, are permitted provided that the following |
8 | | * conditions are met: |
9 | | * |
10 | | * 1. Redistributions of source code must retain the above |
11 | | * copyright notice, this list of conditions and the |
12 | | * following disclaimer. |
13 | | * |
14 | | * 2. Redistributions in binary form must reproduce the above |
15 | | * copyright notice, this list of conditions and the following |
16 | | * disclaimer in the documentation and/or other materials |
17 | | * provided with the distribution. |
18 | | * |
19 | | * THIS SOFTWARE IS PROVIDED BY <COPYRIGHT HOLDER> ``AS IS'' AND |
20 | | * ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED |
21 | | * TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR |
22 | | * A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL |
23 | | * <COPYRIGHT HOLDER> OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, |
24 | | * INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL |
25 | | * DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF |
26 | | * SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR |
27 | | * BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF |
28 | | * LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT |
29 | | * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF |
30 | | * THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF |
31 | | * SUCH DAMAGE. |
32 | | */ |
33 | | #include <assert.h> |
34 | | |
35 | | #include "box/key_def.h" |
36 | | #include "box/sql.h" |
37 | | |
38 | | /** |
39 | | * This file contains auxiliary structures and functions which |
40 | | * are used only during parsing routine (see parse.y). |
41 | | * Their main purpose is to assemble common parts of altered |
42 | | * entities (such as name, or IF EXISTS clause) and pass them |
43 | | * as a one object to further functions. |
44 | | * |
45 | | * Hierarchy is following: |
46 | | * |
47 | | * Base structure is ALTER. |
48 | | * ALTER is omitted only for CREATE TABLE since table is filled |
49 | | * with meta-information just-in-time of parsing: |
50 | | * for instance, as soon as field's name and type are recognized |
51 | | * they are added to space definition. |
52 | | * |
53 | | * DROP is general for all existing objects and includes |
54 | | * name of object itself, name of parent object (table), |
55 | | * IF EXISTS clause and may contain on-drop behaviour |
56 | | * (CASCADE/RESTRICT, but now it is always RESTRICT). |
57 | | * Hence, it terms of grammar - it is a terminal symbol. |
58 | | * |
59 | | * RENAME can be applied only to table (at least now, since it is |
60 | | * ANSI extension), so it is also terminal symbol. |
61 | | * |
62 | | * CREATE in turn can be expanded to nonterminal symbol |
63 | | * CREATE CONSTRAINT or to terminal CREATE TABLE/INDEX/TRIGGER. |
64 | | * CREATE CONSTRAINT unfolds to FOREIGN KEY or UNIQUE/PRIMARY KEY. |
65 | | * |
66 | | * For instance: |
67 | | * ALTER TABLE t ADD CONSTRAINT c FOREIGN KEY REFERENCES t2(id); |
68 | | * ALTER *TABLE* -> CREATE ENTITY -> CREATE CONSTRAINT -> CREATE FK |
69 | | * |
70 | | * CREATE TRIGGER tr1 ... |
71 | | * ALTER *TABLE* -> CREATE ENTITY -> CREATE TRIGGER |
72 | | * |
73 | | * All terminal symbols are stored as a union within |
74 | | * parsing context (struct Parse). |
75 | | */ |
76 | | |
77 | | /** Type of parsed statement. */ |
78 | | enum sql_ast_type { |
79 | | /** Type of the statement is unknown. */ |
80 | | SQL_AST_TYPE_UNKNOWN = 0, |
81 | | /** START TRANSACTION statement. */ |
82 | | SQL_AST_TYPE_START_TRANSACTION, |
83 | | /** COMMIT statement. */ |
84 | | SQL_AST_TYPE_COMMIT, |
85 | | /** ROLLBACK statement. */ |
86 | | SQL_AST_TYPE_ROLLBACK, |
87 | | /** SAVEPOINT statement. */ |
88 | | SQL_AST_TYPE_SAVEPOINT, |
89 | | /** RELEASE SAVEPOINT statement. */ |
90 | | SQL_AST_TYPE_RELEASE_SAVEPOINT, |
91 | | /** ROLLBACK TO SAVEPOINT statement. */ |
92 | | SQL_AST_TYPE_ROLLBACK_TO_SAVEPOINT, |
93 | | }; |
94 | | |
95 | | /** |
96 | | * Each token coming out of the lexer is an instance of |
97 | | * this structure. Tokens are also used as part of an expression. |
98 | | */ |
99 | | struct Token { |
100 | | /** Text of the token. Not NULL-terminated! */ |
101 | | const char *z; |
102 | | /** Number of characters in this token. */ |
103 | | unsigned int n; |
104 | | bool isReserved; |
105 | | }; |
106 | | |
107 | | /** Description of a SAVEPOINT. */ |
108 | | struct sql_ast_savepoint { |
109 | | /** Name of the SAVEPOINT. */ |
110 | | struct Token name; |
111 | | }; |
112 | | |
113 | | /** A structure describing the AST of the parsed SQL statement. */ |
114 | | struct sql_ast { |
115 | | /** Parsed statement type. */ |
116 | | enum sql_ast_type type; |
117 | | /** Savepoint description for savepoint-related statements. */ |
118 | | struct sql_ast_savepoint savepoint; |
119 | | }; |
120 | | |
121 | | /** Constant tokens for integer values. */ |
122 | | extern const struct Token sqlIntTokens[]; |
123 | | |
124 | | /** Generate a Token object from a string. */ |
125 | | void |
126 | | sqlTokenInit(struct Token *p, char *z); |
127 | | |
128 | 4.25k | #define Token_nil ((struct Token) {NULL, 0, false}) |
129 | | |
130 | | /** |
131 | | * Structure representing foreign keys constraints appeared |
132 | | * within CREATE TABLE statement. Used only during parsing. |
133 | | */ |
134 | | struct fk_constraint_parse { |
135 | | /** |
136 | | * Foreign keys constraint declared in <CREATE TABLE ...> |
137 | | * statement. They must be coded after space creation. |
138 | | */ |
139 | | struct fk_constraint_def *fk_def; |
140 | | /** |
141 | | * If inside <CREATE TABLE> or <ALTER TABLE ADD COLUMN> |
142 | | * statement we want to declare self-referenced FK |
143 | | * constraint, we must delay their resolution until the |
144 | | * end of parsing of all columns. |
145 | | * E.g.: CREATE TABLE t1(id REFERENCES t1(b), b); |
146 | | */ |
147 | | struct ExprList *selfref_cols; |
148 | | /** |
149 | | * Still, self-referenced columns might be NULL, if |
150 | | * we declare FK constraints referencing PK: |
151 | | * CREATE TABLE t1(id REFERENCES t1) - it is a valid case. |
152 | | */ |
153 | | bool is_self_referenced; |
154 | | /** Organize these structs into linked list. */ |
155 | | struct rlist link; |
156 | | }; |
157 | | |
158 | | /** |
159 | | * Structure representing check constraint appeared within |
160 | | * CREATE TABLE statement. Used only during parsing. |
161 | | * All allocations are performed on region, so no cleanups are |
162 | | * required. |
163 | | */ |
164 | | struct ck_constraint_parse { |
165 | | /** |
166 | | * Check constraint declared in <CREATE TABLE ...> |
167 | | * statement. Must be coded after space creation. |
168 | | */ |
169 | | struct ck_constraint_def *ck_def; |
170 | | /** Organize these structs into linked list. */ |
171 | | struct rlist link; |
172 | | }; |
173 | | |
174 | | /** |
175 | | * Possible SQL index types. Note that PK and UNIQUE constraints |
176 | | * are implemented as indexes and have their own types: |
177 | | * _CONSTRAINT_PK and _CONSTRAINT_UNIQUE. |
178 | | */ |
179 | | enum sql_index_type { |
180 | | SQL_INDEX_TYPE_NON_UNIQUE = 0, |
181 | | SQL_INDEX_TYPE_UNIQUE, |
182 | | SQL_INDEX_TYPE_CONSTRAINT_UNIQUE, |
183 | | SQL_INDEX_TYPE_CONSTRAINT_PK, |
184 | | sql_index_type_MAX |
185 | | }; |
186 | | |
187 | | enum entity_type { |
188 | | ENTITY_TYPE_TABLE = 0, |
189 | | ENTITY_TYPE_COLUMN, |
190 | | ENTITY_TYPE_VIEW, |
191 | | ENTITY_TYPE_INDEX, |
192 | | ENTITY_TYPE_TRIGGER, |
193 | | ENTITY_TYPE_CK, |
194 | | ENTITY_TYPE_FK, |
195 | | /** |
196 | | * For assertion checks that constraint definition is |
197 | | * created before initialization of a term constraint. |
198 | | */ |
199 | | ENTITY_TYPE_CONSTRAINT, |
200 | | }; |
201 | | |
202 | | enum alter_action { |
203 | | ALTER_ACTION_CREATE = 0, |
204 | | ALTER_ACTION_DROP, |
205 | | ALTER_ACTION_RENAME, |
206 | | ALTER_ACTION_ENABLE, |
207 | | }; |
208 | | |
209 | | struct alter_entity_def { |
210 | | /** Type of topmost entity. */ |
211 | | enum entity_type entity_type; |
212 | | /** Action to be performed using current entity. */ |
213 | | enum alter_action alter_action; |
214 | | /** As a rule it is a name of table to be altered. */ |
215 | | struct SrcList *entity_name; |
216 | | }; |
217 | | |
218 | | struct enable_entity_def { |
219 | | struct alter_entity_def base; |
220 | | /** Name of constraint to be enabled/disabled. */ |
221 | | struct Token name; |
222 | | /** A new state to be set for entity found. */ |
223 | | bool is_enabled; |
224 | | }; |
225 | | |
226 | | struct rename_entity_def { |
227 | | struct alter_entity_def base; |
228 | | struct Token new_name; |
229 | | }; |
230 | | |
231 | | struct create_entity_def { |
232 | | struct alter_entity_def base; |
233 | | struct Token name; |
234 | | /** Statement comes with IF NOT EXISTS clause. */ |
235 | | bool if_not_exist; |
236 | | }; |
237 | | |
238 | | struct create_table_def { |
239 | | struct create_entity_def base; |
240 | | struct space *new_space; |
241 | | }; |
242 | | |
243 | | struct create_column_def { |
244 | | struct create_entity_def base; |
245 | | /** Shallow space copy. */ |
246 | | struct space *space; |
247 | | /** Column type. */ |
248 | | struct type_def *type_def; |
249 | | }; |
250 | | |
251 | | struct create_ck_constraint_parse_def { |
252 | | /** List of ck_constraint_parse_def objects. */ |
253 | | struct rlist checks; |
254 | | }; |
255 | | |
256 | | struct create_fk_constraint_parse_def { |
257 | | /** List of fk_constraint_parse_def objects. */ |
258 | | struct rlist fkeys; |
259 | | /** |
260 | | * True if a list of foreign keys is used and should be cleaned up |
261 | | * properly. |
262 | | */ |
263 | | bool is_used; |
264 | | }; |
265 | | |
266 | | struct create_view_def { |
267 | | struct create_entity_def base; |
268 | | /** |
269 | | * Starting position of CREATE VIEW ... statement. |
270 | | * It is used to fetch whole statement, which is |
271 | | * saved as raw string to space options. |
272 | | */ |
273 | | struct Token *create_start; |
274 | | /** List of column aliases (SELECT x AS y ...). */ |
275 | | struct ExprList *aliases; |
276 | | struct Select *select; |
277 | | }; |
278 | | |
279 | | struct drop_entity_def { |
280 | | struct alter_entity_def base; |
281 | | /** Name of index/trigger/constraint to be dropped. */ |
282 | | struct Token name; |
283 | | /** Statement comes with IF EXISTS clause. */ |
284 | | bool if_exist; |
285 | | }; |
286 | | |
287 | | /** |
288 | | * Identical wrappers around drop_entity_def to make hierarchy of |
289 | | * structures be consistent. Arguments for drop procedures are |
290 | | * the same. |
291 | | */ |
292 | | struct drop_table_def { |
293 | | struct drop_entity_def base; |
294 | | }; |
295 | | |
296 | | struct drop_view_def { |
297 | | struct drop_entity_def base; |
298 | | }; |
299 | | |
300 | | struct drop_trigger_def { |
301 | | struct drop_entity_def base; |
302 | | }; |
303 | | |
304 | | struct drop_index_def { |
305 | | struct drop_entity_def base; |
306 | | }; |
307 | | |
308 | | struct create_trigger_def { |
309 | | struct create_entity_def base; |
310 | | /** One of TK_BEFORE, TK_AFTER, TK_INSTEAD. */ |
311 | | int tr_tm; |
312 | | /** One of TK_INSERT, TK_UPDATE, TK_DELETE. */ |
313 | | int op; |
314 | | /** Column list if this is an UPDATE trigger. */ |
315 | | struct IdList *cols; |
316 | | /** When clause. */ |
317 | | struct Expr *when; |
318 | | }; |
319 | | |
320 | | struct create_constraint_def { |
321 | | struct create_entity_def base; |
322 | | }; |
323 | | |
324 | | struct create_ck_def { |
325 | | struct create_constraint_def base; |
326 | | /** AST representing check expression. */ |
327 | | struct ExprSpan *expr; |
328 | | }; |
329 | | |
330 | | struct create_fk_def { |
331 | | struct create_constraint_def base; |
332 | | struct ExprList *child_cols; |
333 | | struct Token *parent_name; |
334 | | struct ExprList *parent_cols; |
335 | | }; |
336 | | |
337 | | struct create_index_def { |
338 | | struct create_constraint_def base; |
339 | | /** List of indexed columns. */ |
340 | | struct ExprList *cols; |
341 | | /** One of _PRIMARY_KEY, _UNIQUE, _NON_UNIQUE. */ |
342 | | enum sql_index_type idx_type; |
343 | | enum sort_order sort_order; |
344 | | }; |
345 | | |
346 | | /** Basic initialisers of parse structures.*/ |
347 | | static inline void |
348 | | alter_entity_def_init(struct alter_entity_def *alter_def, |
349 | | struct SrcList *entity_name, enum entity_type type, |
350 | | enum alter_action action) |
351 | 12.0k | { |
352 | 12.0k | alter_def->entity_name = entity_name; |
353 | 12.0k | alter_def->entity_type = type; |
354 | 12.0k | alter_def->alter_action = action; |
355 | 12.0k | } Unexecuted instantiation: sql.c:alter_entity_def_init Unexecuted instantiation: alter.c:alter_entity_def_init Unexecuted instantiation: build.c:alter_entity_def_init Unexecuted instantiation: expr.c:alter_entity_def_init Unexecuted instantiation: func.c:alter_entity_def_init Unexecuted instantiation: global.c:alter_entity_def_init Unexecuted instantiation: main.c:alter_entity_def_init Unexecuted instantiation: malloc.c:alter_entity_def_init Unexecuted instantiation: mem.c:alter_entity_def_init Unexecuted instantiation: os.c:alter_entity_def_init Unexecuted instantiation: os_unix.c:alter_entity_def_init Unexecuted instantiation: parse_def.c:alter_entity_def_init Unexecuted instantiation: prepare.c:alter_entity_def_init Unexecuted instantiation: printf.c:alter_entity_def_init Unexecuted instantiation: random.c:alter_entity_def_init Unexecuted instantiation: resolve.c:alter_entity_def_init Unexecuted instantiation: port.c:alter_entity_def_init Unexecuted instantiation: select.c:alter_entity_def_init Unexecuted instantiation: tokenize.c:alter_entity_def_init Unexecuted instantiation: treeview.c:alter_entity_def_init Unexecuted instantiation: trigger.c:alter_entity_def_init Unexecuted instantiation: update.c:alter_entity_def_init Unexecuted instantiation: util.c:alter_entity_def_init Unexecuted instantiation: vdbe.c:alter_entity_def_init Unexecuted instantiation: vdbeapi.c:alter_entity_def_init Unexecuted instantiation: vdbeaux.c:alter_entity_def_init Unexecuted instantiation: vdbesort.c:alter_entity_def_init Unexecuted instantiation: walker.c:alter_entity_def_init Unexecuted instantiation: where.c:alter_entity_def_init Unexecuted instantiation: wherecode.c:alter_entity_def_init Unexecuted instantiation: whereexpr.c:alter_entity_def_init Unexecuted instantiation: execute.c:alter_entity_def_init Unexecuted instantiation: bind.c:alter_entity_def_init Unexecuted instantiation: opcodes.c:alter_entity_def_init parse.c:alter_entity_def_init Line | Count | Source | 351 | 12.0k | { | 352 | 12.0k | alter_def->entity_name = entity_name; | 353 | 12.0k | alter_def->entity_type = type; | 354 | 12.0k | alter_def->alter_action = action; | 355 | 12.0k | } |
Unexecuted instantiation: cursor.c:alter_entity_def_init Unexecuted instantiation: delete.c:alter_entity_def_init Unexecuted instantiation: hash.c:alter_entity_def_init Unexecuted instantiation: insert.c:alter_entity_def_init Unexecuted instantiation: pragma.c:alter_entity_def_init Unexecuted instantiation: show.c:alter_entity_def_init |
356 | | |
357 | | static inline void |
358 | | rename_entity_def_init(struct rename_entity_def *rename_def, |
359 | | struct SrcList *table_name, struct Token *new_name) |
360 | 0 | { |
361 | 0 | alter_entity_def_init(&rename_def->base, table_name, ENTITY_TYPE_TABLE, |
362 | 0 | ALTER_ACTION_RENAME); |
363 | 0 | rename_def->new_name = *new_name; |
364 | 0 | } Unexecuted instantiation: sql.c:rename_entity_def_init Unexecuted instantiation: alter.c:rename_entity_def_init Unexecuted instantiation: build.c:rename_entity_def_init Unexecuted instantiation: expr.c:rename_entity_def_init Unexecuted instantiation: func.c:rename_entity_def_init Unexecuted instantiation: global.c:rename_entity_def_init Unexecuted instantiation: main.c:rename_entity_def_init Unexecuted instantiation: malloc.c:rename_entity_def_init Unexecuted instantiation: mem.c:rename_entity_def_init Unexecuted instantiation: os.c:rename_entity_def_init Unexecuted instantiation: os_unix.c:rename_entity_def_init Unexecuted instantiation: parse_def.c:rename_entity_def_init Unexecuted instantiation: prepare.c:rename_entity_def_init Unexecuted instantiation: printf.c:rename_entity_def_init Unexecuted instantiation: random.c:rename_entity_def_init Unexecuted instantiation: resolve.c:rename_entity_def_init Unexecuted instantiation: port.c:rename_entity_def_init Unexecuted instantiation: select.c:rename_entity_def_init Unexecuted instantiation: tokenize.c:rename_entity_def_init Unexecuted instantiation: treeview.c:rename_entity_def_init Unexecuted instantiation: trigger.c:rename_entity_def_init Unexecuted instantiation: update.c:rename_entity_def_init Unexecuted instantiation: util.c:rename_entity_def_init Unexecuted instantiation: vdbe.c:rename_entity_def_init Unexecuted instantiation: vdbeapi.c:rename_entity_def_init Unexecuted instantiation: vdbeaux.c:rename_entity_def_init Unexecuted instantiation: vdbesort.c:rename_entity_def_init Unexecuted instantiation: walker.c:rename_entity_def_init Unexecuted instantiation: where.c:rename_entity_def_init Unexecuted instantiation: wherecode.c:rename_entity_def_init Unexecuted instantiation: whereexpr.c:rename_entity_def_init Unexecuted instantiation: execute.c:rename_entity_def_init Unexecuted instantiation: bind.c:rename_entity_def_init Unexecuted instantiation: opcodes.c:rename_entity_def_init Unexecuted instantiation: parse.c:rename_entity_def_init Unexecuted instantiation: cursor.c:rename_entity_def_init Unexecuted instantiation: delete.c:rename_entity_def_init Unexecuted instantiation: hash.c:rename_entity_def_init Unexecuted instantiation: insert.c:rename_entity_def_init Unexecuted instantiation: pragma.c:rename_entity_def_init Unexecuted instantiation: show.c:rename_entity_def_init |
365 | | |
366 | | static inline void |
367 | | enable_entity_def_init(struct enable_entity_def *enable_def, |
368 | | enum entity_type type, struct SrcList *parent_name, |
369 | | struct Token *name, bool is_enabled) |
370 | 0 | { |
371 | 0 | alter_entity_def_init(&enable_def->base, parent_name, type, |
372 | 0 | ALTER_ACTION_ENABLE); |
373 | 0 | enable_def->name = *name; |
374 | 0 | enable_def->is_enabled = is_enabled; |
375 | 0 | } Unexecuted instantiation: sql.c:enable_entity_def_init Unexecuted instantiation: alter.c:enable_entity_def_init Unexecuted instantiation: build.c:enable_entity_def_init Unexecuted instantiation: expr.c:enable_entity_def_init Unexecuted instantiation: func.c:enable_entity_def_init Unexecuted instantiation: global.c:enable_entity_def_init Unexecuted instantiation: main.c:enable_entity_def_init Unexecuted instantiation: malloc.c:enable_entity_def_init Unexecuted instantiation: mem.c:enable_entity_def_init Unexecuted instantiation: os.c:enable_entity_def_init Unexecuted instantiation: os_unix.c:enable_entity_def_init Unexecuted instantiation: parse_def.c:enable_entity_def_init Unexecuted instantiation: prepare.c:enable_entity_def_init Unexecuted instantiation: printf.c:enable_entity_def_init Unexecuted instantiation: random.c:enable_entity_def_init Unexecuted instantiation: resolve.c:enable_entity_def_init Unexecuted instantiation: port.c:enable_entity_def_init Unexecuted instantiation: select.c:enable_entity_def_init Unexecuted instantiation: tokenize.c:enable_entity_def_init Unexecuted instantiation: treeview.c:enable_entity_def_init Unexecuted instantiation: trigger.c:enable_entity_def_init Unexecuted instantiation: update.c:enable_entity_def_init Unexecuted instantiation: util.c:enable_entity_def_init Unexecuted instantiation: vdbe.c:enable_entity_def_init Unexecuted instantiation: vdbeapi.c:enable_entity_def_init Unexecuted instantiation: vdbeaux.c:enable_entity_def_init Unexecuted instantiation: vdbesort.c:enable_entity_def_init Unexecuted instantiation: walker.c:enable_entity_def_init Unexecuted instantiation: where.c:enable_entity_def_init Unexecuted instantiation: wherecode.c:enable_entity_def_init Unexecuted instantiation: whereexpr.c:enable_entity_def_init Unexecuted instantiation: execute.c:enable_entity_def_init Unexecuted instantiation: bind.c:enable_entity_def_init Unexecuted instantiation: opcodes.c:enable_entity_def_init Unexecuted instantiation: parse.c:enable_entity_def_init Unexecuted instantiation: cursor.c:enable_entity_def_init Unexecuted instantiation: delete.c:enable_entity_def_init Unexecuted instantiation: hash.c:enable_entity_def_init Unexecuted instantiation: insert.c:enable_entity_def_init Unexecuted instantiation: pragma.c:enable_entity_def_init Unexecuted instantiation: show.c:enable_entity_def_init |
376 | | |
377 | | static inline void |
378 | | create_entity_def_init(struct create_entity_def *create_def, |
379 | | enum entity_type type, struct SrcList *parent_name, |
380 | | struct Token *name, bool if_not_exist) |
381 | 12.0k | { |
382 | 12.0k | alter_entity_def_init(&create_def->base, parent_name, type, |
383 | 12.0k | ALTER_ACTION_CREATE); |
384 | 12.0k | create_def->name = *name; |
385 | 12.0k | create_def->if_not_exist = if_not_exist; |
386 | 12.0k | } Unexecuted instantiation: sql.c:create_entity_def_init Unexecuted instantiation: alter.c:create_entity_def_init Unexecuted instantiation: build.c:create_entity_def_init Unexecuted instantiation: expr.c:create_entity_def_init Unexecuted instantiation: func.c:create_entity_def_init Unexecuted instantiation: global.c:create_entity_def_init Unexecuted instantiation: main.c:create_entity_def_init Unexecuted instantiation: malloc.c:create_entity_def_init Unexecuted instantiation: mem.c:create_entity_def_init Unexecuted instantiation: os.c:create_entity_def_init Unexecuted instantiation: os_unix.c:create_entity_def_init Unexecuted instantiation: parse_def.c:create_entity_def_init Unexecuted instantiation: prepare.c:create_entity_def_init Unexecuted instantiation: printf.c:create_entity_def_init Unexecuted instantiation: random.c:create_entity_def_init Unexecuted instantiation: resolve.c:create_entity_def_init Unexecuted instantiation: port.c:create_entity_def_init Unexecuted instantiation: select.c:create_entity_def_init Unexecuted instantiation: tokenize.c:create_entity_def_init Unexecuted instantiation: treeview.c:create_entity_def_init Unexecuted instantiation: trigger.c:create_entity_def_init Unexecuted instantiation: update.c:create_entity_def_init Unexecuted instantiation: util.c:create_entity_def_init Unexecuted instantiation: vdbe.c:create_entity_def_init Unexecuted instantiation: vdbeapi.c:create_entity_def_init Unexecuted instantiation: vdbeaux.c:create_entity_def_init Unexecuted instantiation: vdbesort.c:create_entity_def_init Unexecuted instantiation: walker.c:create_entity_def_init Unexecuted instantiation: where.c:create_entity_def_init Unexecuted instantiation: wherecode.c:create_entity_def_init Unexecuted instantiation: whereexpr.c:create_entity_def_init Unexecuted instantiation: execute.c:create_entity_def_init Unexecuted instantiation: bind.c:create_entity_def_init Unexecuted instantiation: opcodes.c:create_entity_def_init parse.c:create_entity_def_init Line | Count | Source | 381 | 12.0k | { | 382 | 12.0k | alter_entity_def_init(&create_def->base, parent_name, type, | 383 | 12.0k | ALTER_ACTION_CREATE); | 384 | 12.0k | create_def->name = *name; | 385 | 12.0k | create_def->if_not_exist = if_not_exist; | 386 | 12.0k | } |
Unexecuted instantiation: cursor.c:create_entity_def_init Unexecuted instantiation: delete.c:create_entity_def_init Unexecuted instantiation: hash.c:create_entity_def_init Unexecuted instantiation: insert.c:create_entity_def_init Unexecuted instantiation: pragma.c:create_entity_def_init Unexecuted instantiation: show.c:create_entity_def_init |
387 | | |
388 | | static inline void |
389 | | create_constraint_def_init(struct create_constraint_def *constr_def, |
390 | | struct SrcList *parent_name, struct Token *name, |
391 | | bool if_not_exists, enum entity_type entity_type) |
392 | 4.11k | { |
393 | 4.11k | create_entity_def_init(&constr_def->base, entity_type, |
394 | 4.11k | parent_name, name, if_not_exists); |
395 | 4.11k | } Unexecuted instantiation: sql.c:create_constraint_def_init Unexecuted instantiation: alter.c:create_constraint_def_init Unexecuted instantiation: build.c:create_constraint_def_init Unexecuted instantiation: expr.c:create_constraint_def_init Unexecuted instantiation: func.c:create_constraint_def_init Unexecuted instantiation: global.c:create_constraint_def_init Unexecuted instantiation: main.c:create_constraint_def_init Unexecuted instantiation: malloc.c:create_constraint_def_init Unexecuted instantiation: mem.c:create_constraint_def_init Unexecuted instantiation: os.c:create_constraint_def_init Unexecuted instantiation: os_unix.c:create_constraint_def_init Unexecuted instantiation: parse_def.c:create_constraint_def_init Unexecuted instantiation: prepare.c:create_constraint_def_init Unexecuted instantiation: printf.c:create_constraint_def_init Unexecuted instantiation: random.c:create_constraint_def_init Unexecuted instantiation: resolve.c:create_constraint_def_init Unexecuted instantiation: port.c:create_constraint_def_init Unexecuted instantiation: select.c:create_constraint_def_init Unexecuted instantiation: tokenize.c:create_constraint_def_init Unexecuted instantiation: treeview.c:create_constraint_def_init Unexecuted instantiation: trigger.c:create_constraint_def_init Unexecuted instantiation: update.c:create_constraint_def_init Unexecuted instantiation: util.c:create_constraint_def_init Unexecuted instantiation: vdbe.c:create_constraint_def_init Unexecuted instantiation: vdbeapi.c:create_constraint_def_init Unexecuted instantiation: vdbeaux.c:create_constraint_def_init Unexecuted instantiation: vdbesort.c:create_constraint_def_init Unexecuted instantiation: walker.c:create_constraint_def_init Unexecuted instantiation: where.c:create_constraint_def_init Unexecuted instantiation: wherecode.c:create_constraint_def_init Unexecuted instantiation: whereexpr.c:create_constraint_def_init Unexecuted instantiation: execute.c:create_constraint_def_init Unexecuted instantiation: bind.c:create_constraint_def_init Unexecuted instantiation: opcodes.c:create_constraint_def_init parse.c:create_constraint_def_init Line | Count | Source | 392 | 4.11k | { | 393 | 4.11k | create_entity_def_init(&constr_def->base, entity_type, | 394 | 4.11k | parent_name, name, if_not_exists); | 395 | 4.11k | } |
Unexecuted instantiation: cursor.c:create_constraint_def_init Unexecuted instantiation: delete.c:create_constraint_def_init Unexecuted instantiation: hash.c:create_constraint_def_init Unexecuted instantiation: insert.c:create_constraint_def_init Unexecuted instantiation: pragma.c:create_constraint_def_init Unexecuted instantiation: show.c:create_constraint_def_init |
396 | | |
397 | | static inline void |
398 | | drop_entity_def_init(struct drop_entity_def *drop_def, |
399 | | struct SrcList *parent_name, struct Token *name, |
400 | | bool if_exist, enum entity_type entity_type) |
401 | 0 | { |
402 | 0 | alter_entity_def_init(&drop_def->base, parent_name, entity_type, |
403 | 0 | ALTER_ACTION_DROP); |
404 | 0 | drop_def->name = *name; |
405 | 0 | drop_def->if_exist = if_exist; |
406 | 0 | } Unexecuted instantiation: sql.c:drop_entity_def_init Unexecuted instantiation: alter.c:drop_entity_def_init Unexecuted instantiation: build.c:drop_entity_def_init Unexecuted instantiation: expr.c:drop_entity_def_init Unexecuted instantiation: func.c:drop_entity_def_init Unexecuted instantiation: global.c:drop_entity_def_init Unexecuted instantiation: main.c:drop_entity_def_init Unexecuted instantiation: malloc.c:drop_entity_def_init Unexecuted instantiation: mem.c:drop_entity_def_init Unexecuted instantiation: os.c:drop_entity_def_init Unexecuted instantiation: os_unix.c:drop_entity_def_init Unexecuted instantiation: parse_def.c:drop_entity_def_init Unexecuted instantiation: prepare.c:drop_entity_def_init Unexecuted instantiation: printf.c:drop_entity_def_init Unexecuted instantiation: random.c:drop_entity_def_init Unexecuted instantiation: resolve.c:drop_entity_def_init Unexecuted instantiation: port.c:drop_entity_def_init Unexecuted instantiation: select.c:drop_entity_def_init Unexecuted instantiation: tokenize.c:drop_entity_def_init Unexecuted instantiation: treeview.c:drop_entity_def_init Unexecuted instantiation: trigger.c:drop_entity_def_init Unexecuted instantiation: update.c:drop_entity_def_init Unexecuted instantiation: util.c:drop_entity_def_init Unexecuted instantiation: vdbe.c:drop_entity_def_init Unexecuted instantiation: vdbeapi.c:drop_entity_def_init Unexecuted instantiation: vdbeaux.c:drop_entity_def_init Unexecuted instantiation: vdbesort.c:drop_entity_def_init Unexecuted instantiation: walker.c:drop_entity_def_init Unexecuted instantiation: where.c:drop_entity_def_init Unexecuted instantiation: wherecode.c:drop_entity_def_init Unexecuted instantiation: whereexpr.c:drop_entity_def_init Unexecuted instantiation: execute.c:drop_entity_def_init Unexecuted instantiation: bind.c:drop_entity_def_init Unexecuted instantiation: opcodes.c:drop_entity_def_init Unexecuted instantiation: parse.c:drop_entity_def_init Unexecuted instantiation: cursor.c:drop_entity_def_init Unexecuted instantiation: delete.c:drop_entity_def_init Unexecuted instantiation: hash.c:drop_entity_def_init Unexecuted instantiation: insert.c:drop_entity_def_init Unexecuted instantiation: pragma.c:drop_entity_def_init Unexecuted instantiation: show.c:drop_entity_def_init |
407 | | |
408 | | static inline void |
409 | | drop_table_def_init(struct drop_table_def *drop_table_def, |
410 | | struct SrcList *parent_name, struct Token *name, |
411 | | bool if_exist) |
412 | 0 | { |
413 | 0 | drop_entity_def_init(&drop_table_def->base, parent_name, name, if_exist, |
414 | 0 | ENTITY_TYPE_TABLE); |
415 | 0 | } Unexecuted instantiation: sql.c:drop_table_def_init Unexecuted instantiation: alter.c:drop_table_def_init Unexecuted instantiation: build.c:drop_table_def_init Unexecuted instantiation: expr.c:drop_table_def_init Unexecuted instantiation: func.c:drop_table_def_init Unexecuted instantiation: global.c:drop_table_def_init Unexecuted instantiation: main.c:drop_table_def_init Unexecuted instantiation: malloc.c:drop_table_def_init Unexecuted instantiation: mem.c:drop_table_def_init Unexecuted instantiation: os.c:drop_table_def_init Unexecuted instantiation: os_unix.c:drop_table_def_init Unexecuted instantiation: parse_def.c:drop_table_def_init Unexecuted instantiation: prepare.c:drop_table_def_init Unexecuted instantiation: printf.c:drop_table_def_init Unexecuted instantiation: random.c:drop_table_def_init Unexecuted instantiation: resolve.c:drop_table_def_init Unexecuted instantiation: port.c:drop_table_def_init Unexecuted instantiation: select.c:drop_table_def_init Unexecuted instantiation: tokenize.c:drop_table_def_init Unexecuted instantiation: treeview.c:drop_table_def_init Unexecuted instantiation: trigger.c:drop_table_def_init Unexecuted instantiation: update.c:drop_table_def_init Unexecuted instantiation: util.c:drop_table_def_init Unexecuted instantiation: vdbe.c:drop_table_def_init Unexecuted instantiation: vdbeapi.c:drop_table_def_init Unexecuted instantiation: vdbeaux.c:drop_table_def_init Unexecuted instantiation: vdbesort.c:drop_table_def_init Unexecuted instantiation: walker.c:drop_table_def_init Unexecuted instantiation: where.c:drop_table_def_init Unexecuted instantiation: wherecode.c:drop_table_def_init Unexecuted instantiation: whereexpr.c:drop_table_def_init Unexecuted instantiation: execute.c:drop_table_def_init Unexecuted instantiation: bind.c:drop_table_def_init Unexecuted instantiation: opcodes.c:drop_table_def_init Unexecuted instantiation: parse.c:drop_table_def_init Unexecuted instantiation: cursor.c:drop_table_def_init Unexecuted instantiation: delete.c:drop_table_def_init Unexecuted instantiation: hash.c:drop_table_def_init Unexecuted instantiation: insert.c:drop_table_def_init Unexecuted instantiation: pragma.c:drop_table_def_init Unexecuted instantiation: show.c:drop_table_def_init |
416 | | |
417 | | static inline void |
418 | | drop_view_def_init(struct drop_view_def *drop_view_def, |
419 | | struct SrcList *parent_name, struct Token *name, |
420 | | bool if_exist) |
421 | 0 | { |
422 | 0 | drop_entity_def_init(&drop_view_def->base, parent_name, name, if_exist, |
423 | 0 | ENTITY_TYPE_VIEW); |
424 | 0 | } Unexecuted instantiation: sql.c:drop_view_def_init Unexecuted instantiation: alter.c:drop_view_def_init Unexecuted instantiation: build.c:drop_view_def_init Unexecuted instantiation: expr.c:drop_view_def_init Unexecuted instantiation: func.c:drop_view_def_init Unexecuted instantiation: global.c:drop_view_def_init Unexecuted instantiation: main.c:drop_view_def_init Unexecuted instantiation: malloc.c:drop_view_def_init Unexecuted instantiation: mem.c:drop_view_def_init Unexecuted instantiation: os.c:drop_view_def_init Unexecuted instantiation: os_unix.c:drop_view_def_init Unexecuted instantiation: parse_def.c:drop_view_def_init Unexecuted instantiation: prepare.c:drop_view_def_init Unexecuted instantiation: printf.c:drop_view_def_init Unexecuted instantiation: random.c:drop_view_def_init Unexecuted instantiation: resolve.c:drop_view_def_init Unexecuted instantiation: port.c:drop_view_def_init Unexecuted instantiation: select.c:drop_view_def_init Unexecuted instantiation: tokenize.c:drop_view_def_init Unexecuted instantiation: treeview.c:drop_view_def_init Unexecuted instantiation: trigger.c:drop_view_def_init Unexecuted instantiation: update.c:drop_view_def_init Unexecuted instantiation: util.c:drop_view_def_init Unexecuted instantiation: vdbe.c:drop_view_def_init Unexecuted instantiation: vdbeapi.c:drop_view_def_init Unexecuted instantiation: vdbeaux.c:drop_view_def_init Unexecuted instantiation: vdbesort.c:drop_view_def_init Unexecuted instantiation: walker.c:drop_view_def_init Unexecuted instantiation: where.c:drop_view_def_init Unexecuted instantiation: wherecode.c:drop_view_def_init Unexecuted instantiation: whereexpr.c:drop_view_def_init Unexecuted instantiation: execute.c:drop_view_def_init Unexecuted instantiation: bind.c:drop_view_def_init Unexecuted instantiation: opcodes.c:drop_view_def_init Unexecuted instantiation: parse.c:drop_view_def_init Unexecuted instantiation: cursor.c:drop_view_def_init Unexecuted instantiation: delete.c:drop_view_def_init Unexecuted instantiation: hash.c:drop_view_def_init Unexecuted instantiation: insert.c:drop_view_def_init Unexecuted instantiation: pragma.c:drop_view_def_init Unexecuted instantiation: show.c:drop_view_def_init |
425 | | |
426 | | static inline void |
427 | | drop_trigger_def_init(struct drop_trigger_def *drop_trigger_def, |
428 | | struct SrcList *parent_name, struct Token *name, |
429 | | bool if_exist) |
430 | 0 | { |
431 | 0 | drop_entity_def_init(&drop_trigger_def->base, parent_name, name, |
432 | 0 | if_exist, ENTITY_TYPE_TRIGGER); |
433 | 0 | } Unexecuted instantiation: sql.c:drop_trigger_def_init Unexecuted instantiation: alter.c:drop_trigger_def_init Unexecuted instantiation: build.c:drop_trigger_def_init Unexecuted instantiation: expr.c:drop_trigger_def_init Unexecuted instantiation: func.c:drop_trigger_def_init Unexecuted instantiation: global.c:drop_trigger_def_init Unexecuted instantiation: main.c:drop_trigger_def_init Unexecuted instantiation: malloc.c:drop_trigger_def_init Unexecuted instantiation: mem.c:drop_trigger_def_init Unexecuted instantiation: os.c:drop_trigger_def_init Unexecuted instantiation: os_unix.c:drop_trigger_def_init Unexecuted instantiation: parse_def.c:drop_trigger_def_init Unexecuted instantiation: prepare.c:drop_trigger_def_init Unexecuted instantiation: printf.c:drop_trigger_def_init Unexecuted instantiation: random.c:drop_trigger_def_init Unexecuted instantiation: resolve.c:drop_trigger_def_init Unexecuted instantiation: port.c:drop_trigger_def_init Unexecuted instantiation: select.c:drop_trigger_def_init Unexecuted instantiation: tokenize.c:drop_trigger_def_init Unexecuted instantiation: treeview.c:drop_trigger_def_init Unexecuted instantiation: trigger.c:drop_trigger_def_init Unexecuted instantiation: update.c:drop_trigger_def_init Unexecuted instantiation: util.c:drop_trigger_def_init Unexecuted instantiation: vdbe.c:drop_trigger_def_init Unexecuted instantiation: vdbeapi.c:drop_trigger_def_init Unexecuted instantiation: vdbeaux.c:drop_trigger_def_init Unexecuted instantiation: vdbesort.c:drop_trigger_def_init Unexecuted instantiation: walker.c:drop_trigger_def_init Unexecuted instantiation: where.c:drop_trigger_def_init Unexecuted instantiation: wherecode.c:drop_trigger_def_init Unexecuted instantiation: whereexpr.c:drop_trigger_def_init Unexecuted instantiation: execute.c:drop_trigger_def_init Unexecuted instantiation: bind.c:drop_trigger_def_init Unexecuted instantiation: opcodes.c:drop_trigger_def_init Unexecuted instantiation: parse.c:drop_trigger_def_init Unexecuted instantiation: cursor.c:drop_trigger_def_init Unexecuted instantiation: delete.c:drop_trigger_def_init Unexecuted instantiation: hash.c:drop_trigger_def_init Unexecuted instantiation: insert.c:drop_trigger_def_init Unexecuted instantiation: pragma.c:drop_trigger_def_init Unexecuted instantiation: show.c:drop_trigger_def_init |
434 | | |
435 | | static inline void |
436 | | drop_index_def_init(struct drop_index_def *drop_index_def, |
437 | | struct SrcList *parent_name, struct Token *name, |
438 | | bool if_exist) |
439 | 0 | { |
440 | 0 | drop_entity_def_init(&drop_index_def->base, parent_name, name, if_exist, |
441 | 0 | ENTITY_TYPE_INDEX); |
442 | 0 | } Unexecuted instantiation: sql.c:drop_index_def_init Unexecuted instantiation: alter.c:drop_index_def_init Unexecuted instantiation: build.c:drop_index_def_init Unexecuted instantiation: expr.c:drop_index_def_init Unexecuted instantiation: func.c:drop_index_def_init Unexecuted instantiation: global.c:drop_index_def_init Unexecuted instantiation: main.c:drop_index_def_init Unexecuted instantiation: malloc.c:drop_index_def_init Unexecuted instantiation: mem.c:drop_index_def_init Unexecuted instantiation: os.c:drop_index_def_init Unexecuted instantiation: os_unix.c:drop_index_def_init Unexecuted instantiation: parse_def.c:drop_index_def_init Unexecuted instantiation: prepare.c:drop_index_def_init Unexecuted instantiation: printf.c:drop_index_def_init Unexecuted instantiation: random.c:drop_index_def_init Unexecuted instantiation: resolve.c:drop_index_def_init Unexecuted instantiation: port.c:drop_index_def_init Unexecuted instantiation: select.c:drop_index_def_init Unexecuted instantiation: tokenize.c:drop_index_def_init Unexecuted instantiation: treeview.c:drop_index_def_init Unexecuted instantiation: trigger.c:drop_index_def_init Unexecuted instantiation: update.c:drop_index_def_init Unexecuted instantiation: util.c:drop_index_def_init Unexecuted instantiation: vdbe.c:drop_index_def_init Unexecuted instantiation: vdbeapi.c:drop_index_def_init Unexecuted instantiation: vdbeaux.c:drop_index_def_init Unexecuted instantiation: vdbesort.c:drop_index_def_init Unexecuted instantiation: walker.c:drop_index_def_init Unexecuted instantiation: where.c:drop_index_def_init Unexecuted instantiation: wherecode.c:drop_index_def_init Unexecuted instantiation: whereexpr.c:drop_index_def_init Unexecuted instantiation: execute.c:drop_index_def_init Unexecuted instantiation: bind.c:drop_index_def_init Unexecuted instantiation: opcodes.c:drop_index_def_init Unexecuted instantiation: parse.c:drop_index_def_init Unexecuted instantiation: cursor.c:drop_index_def_init Unexecuted instantiation: delete.c:drop_index_def_init Unexecuted instantiation: hash.c:drop_index_def_init Unexecuted instantiation: insert.c:drop_index_def_init Unexecuted instantiation: pragma.c:drop_index_def_init Unexecuted instantiation: show.c:drop_index_def_init |
443 | | |
444 | | static inline void |
445 | | create_trigger_def_init(struct create_trigger_def *trigger_def, |
446 | | struct SrcList *table_name, struct Token *name, |
447 | | int tr_tm, int op, struct IdList *cols, |
448 | | struct Expr *when, bool if_not_exists) |
449 | 0 | { |
450 | 0 | create_entity_def_init(&trigger_def->base, ENTITY_TYPE_TRIGGER, |
451 | 0 | table_name, name, if_not_exists); |
452 | 0 | trigger_def->tr_tm = tr_tm; |
453 | 0 | trigger_def->op = op; |
454 | 0 | trigger_def->cols = cols; |
455 | 0 | trigger_def->when = when; |
456 | 0 | } Unexecuted instantiation: sql.c:create_trigger_def_init Unexecuted instantiation: alter.c:create_trigger_def_init Unexecuted instantiation: build.c:create_trigger_def_init Unexecuted instantiation: expr.c:create_trigger_def_init Unexecuted instantiation: func.c:create_trigger_def_init Unexecuted instantiation: global.c:create_trigger_def_init Unexecuted instantiation: main.c:create_trigger_def_init Unexecuted instantiation: malloc.c:create_trigger_def_init Unexecuted instantiation: mem.c:create_trigger_def_init Unexecuted instantiation: os.c:create_trigger_def_init Unexecuted instantiation: os_unix.c:create_trigger_def_init Unexecuted instantiation: parse_def.c:create_trigger_def_init Unexecuted instantiation: prepare.c:create_trigger_def_init Unexecuted instantiation: printf.c:create_trigger_def_init Unexecuted instantiation: random.c:create_trigger_def_init Unexecuted instantiation: resolve.c:create_trigger_def_init Unexecuted instantiation: port.c:create_trigger_def_init Unexecuted instantiation: select.c:create_trigger_def_init Unexecuted instantiation: tokenize.c:create_trigger_def_init Unexecuted instantiation: treeview.c:create_trigger_def_init Unexecuted instantiation: trigger.c:create_trigger_def_init Unexecuted instantiation: update.c:create_trigger_def_init Unexecuted instantiation: util.c:create_trigger_def_init Unexecuted instantiation: vdbe.c:create_trigger_def_init Unexecuted instantiation: vdbeapi.c:create_trigger_def_init Unexecuted instantiation: vdbeaux.c:create_trigger_def_init Unexecuted instantiation: vdbesort.c:create_trigger_def_init Unexecuted instantiation: walker.c:create_trigger_def_init Unexecuted instantiation: where.c:create_trigger_def_init Unexecuted instantiation: wherecode.c:create_trigger_def_init Unexecuted instantiation: whereexpr.c:create_trigger_def_init Unexecuted instantiation: execute.c:create_trigger_def_init Unexecuted instantiation: bind.c:create_trigger_def_init Unexecuted instantiation: opcodes.c:create_trigger_def_init Unexecuted instantiation: parse.c:create_trigger_def_init Unexecuted instantiation: cursor.c:create_trigger_def_init Unexecuted instantiation: delete.c:create_trigger_def_init Unexecuted instantiation: hash.c:create_trigger_def_init Unexecuted instantiation: insert.c:create_trigger_def_init Unexecuted instantiation: pragma.c:create_trigger_def_init Unexecuted instantiation: show.c:create_trigger_def_init |
457 | | |
458 | | static inline void |
459 | | create_ck_def_init(struct create_ck_def *ck_def, struct SrcList *table_name, |
460 | | struct Token *name, struct ExprSpan *expr) |
461 | 1.90k | { |
462 | 1.90k | create_constraint_def_init(&ck_def->base, table_name, name, false, |
463 | 1.90k | ENTITY_TYPE_CK); |
464 | 1.90k | ck_def->expr = expr; |
465 | 1.90k | } Unexecuted instantiation: sql.c:create_ck_def_init Unexecuted instantiation: alter.c:create_ck_def_init Unexecuted instantiation: build.c:create_ck_def_init Unexecuted instantiation: expr.c:create_ck_def_init Unexecuted instantiation: func.c:create_ck_def_init Unexecuted instantiation: global.c:create_ck_def_init Unexecuted instantiation: main.c:create_ck_def_init Unexecuted instantiation: malloc.c:create_ck_def_init Unexecuted instantiation: mem.c:create_ck_def_init Unexecuted instantiation: os.c:create_ck_def_init Unexecuted instantiation: os_unix.c:create_ck_def_init Unexecuted instantiation: parse_def.c:create_ck_def_init Unexecuted instantiation: prepare.c:create_ck_def_init Unexecuted instantiation: printf.c:create_ck_def_init Unexecuted instantiation: random.c:create_ck_def_init Unexecuted instantiation: resolve.c:create_ck_def_init Unexecuted instantiation: port.c:create_ck_def_init Unexecuted instantiation: select.c:create_ck_def_init Unexecuted instantiation: tokenize.c:create_ck_def_init Unexecuted instantiation: treeview.c:create_ck_def_init Unexecuted instantiation: trigger.c:create_ck_def_init Unexecuted instantiation: update.c:create_ck_def_init Unexecuted instantiation: util.c:create_ck_def_init Unexecuted instantiation: vdbe.c:create_ck_def_init Unexecuted instantiation: vdbeapi.c:create_ck_def_init Unexecuted instantiation: vdbeaux.c:create_ck_def_init Unexecuted instantiation: vdbesort.c:create_ck_def_init Unexecuted instantiation: walker.c:create_ck_def_init Unexecuted instantiation: where.c:create_ck_def_init Unexecuted instantiation: wherecode.c:create_ck_def_init Unexecuted instantiation: whereexpr.c:create_ck_def_init Unexecuted instantiation: execute.c:create_ck_def_init Unexecuted instantiation: bind.c:create_ck_def_init Unexecuted instantiation: opcodes.c:create_ck_def_init parse.c:create_ck_def_init Line | Count | Source | 461 | 1.90k | { | 462 | | create_constraint_def_init(&ck_def->base, table_name, name, false, | 463 | 1.90k | ENTITY_TYPE_CK); | 464 | 1.90k | ck_def->expr = expr; | 465 | 1.90k | } |
Unexecuted instantiation: cursor.c:create_ck_def_init Unexecuted instantiation: delete.c:create_ck_def_init Unexecuted instantiation: hash.c:create_ck_def_init Unexecuted instantiation: insert.c:create_ck_def_init Unexecuted instantiation: pragma.c:create_ck_def_init Unexecuted instantiation: show.c:create_ck_def_init |
466 | | |
467 | | static inline void |
468 | | create_index_def_init(struct create_index_def *index_def, |
469 | | struct SrcList *table_name, struct Token *name, |
470 | | struct ExprList *cols, enum sql_index_type idx_type, |
471 | | enum sort_order sort_order, bool if_not_exists) |
472 | 2.09k | { |
473 | 2.09k | create_constraint_def_init(&index_def->base, table_name, name, |
474 | 2.09k | if_not_exists, ENTITY_TYPE_INDEX); |
475 | 2.09k | index_def->cols = cols; |
476 | 2.09k | index_def->idx_type = idx_type; |
477 | 2.09k | index_def->sort_order = sort_order; |
478 | 2.09k | } Unexecuted instantiation: sql.c:create_index_def_init Unexecuted instantiation: alter.c:create_index_def_init Unexecuted instantiation: build.c:create_index_def_init Unexecuted instantiation: expr.c:create_index_def_init Unexecuted instantiation: func.c:create_index_def_init Unexecuted instantiation: global.c:create_index_def_init Unexecuted instantiation: main.c:create_index_def_init Unexecuted instantiation: malloc.c:create_index_def_init Unexecuted instantiation: mem.c:create_index_def_init Unexecuted instantiation: os.c:create_index_def_init Unexecuted instantiation: os_unix.c:create_index_def_init Unexecuted instantiation: parse_def.c:create_index_def_init Unexecuted instantiation: prepare.c:create_index_def_init Unexecuted instantiation: printf.c:create_index_def_init Unexecuted instantiation: random.c:create_index_def_init Unexecuted instantiation: resolve.c:create_index_def_init Unexecuted instantiation: port.c:create_index_def_init Unexecuted instantiation: select.c:create_index_def_init Unexecuted instantiation: tokenize.c:create_index_def_init Unexecuted instantiation: treeview.c:create_index_def_init Unexecuted instantiation: trigger.c:create_index_def_init Unexecuted instantiation: update.c:create_index_def_init Unexecuted instantiation: util.c:create_index_def_init Unexecuted instantiation: vdbe.c:create_index_def_init Unexecuted instantiation: vdbeapi.c:create_index_def_init Unexecuted instantiation: vdbeaux.c:create_index_def_init Unexecuted instantiation: vdbesort.c:create_index_def_init Unexecuted instantiation: walker.c:create_index_def_init Unexecuted instantiation: where.c:create_index_def_init Unexecuted instantiation: wherecode.c:create_index_def_init Unexecuted instantiation: whereexpr.c:create_index_def_init Unexecuted instantiation: execute.c:create_index_def_init Unexecuted instantiation: bind.c:create_index_def_init Unexecuted instantiation: opcodes.c:create_index_def_init parse.c:create_index_def_init Line | Count | Source | 472 | 2.09k | { | 473 | 2.09k | create_constraint_def_init(&index_def->base, table_name, name, | 474 | 2.09k | if_not_exists, ENTITY_TYPE_INDEX); | 475 | 2.09k | index_def->cols = cols; | 476 | 2.09k | index_def->idx_type = idx_type; | 477 | 2.09k | index_def->sort_order = sort_order; | 478 | 2.09k | } |
Unexecuted instantiation: cursor.c:create_index_def_init Unexecuted instantiation: delete.c:create_index_def_init Unexecuted instantiation: hash.c:create_index_def_init Unexecuted instantiation: insert.c:create_index_def_init Unexecuted instantiation: pragma.c:create_index_def_init Unexecuted instantiation: show.c:create_index_def_init |
479 | | |
480 | | static inline void |
481 | | create_fk_def_init(struct create_fk_def *fk_def, struct SrcList *table_name, |
482 | | struct Token *name, struct ExprList *child_cols, |
483 | | struct Token *parent_name, struct ExprList *parent_cols) |
484 | 117 | { |
485 | 117 | create_constraint_def_init(&fk_def->base, table_name, name, |
486 | 117 | false, ENTITY_TYPE_FK); |
487 | 117 | fk_def->child_cols = child_cols; |
488 | 117 | fk_def->parent_name = parent_name; |
489 | 117 | fk_def->parent_cols = parent_cols; |
490 | 117 | } Unexecuted instantiation: sql.c:create_fk_def_init Unexecuted instantiation: alter.c:create_fk_def_init Unexecuted instantiation: build.c:create_fk_def_init Unexecuted instantiation: expr.c:create_fk_def_init Unexecuted instantiation: func.c:create_fk_def_init Unexecuted instantiation: global.c:create_fk_def_init Unexecuted instantiation: main.c:create_fk_def_init Unexecuted instantiation: malloc.c:create_fk_def_init Unexecuted instantiation: mem.c:create_fk_def_init Unexecuted instantiation: os.c:create_fk_def_init Unexecuted instantiation: os_unix.c:create_fk_def_init Unexecuted instantiation: parse_def.c:create_fk_def_init Unexecuted instantiation: prepare.c:create_fk_def_init Unexecuted instantiation: printf.c:create_fk_def_init Unexecuted instantiation: random.c:create_fk_def_init Unexecuted instantiation: resolve.c:create_fk_def_init Unexecuted instantiation: port.c:create_fk_def_init Unexecuted instantiation: select.c:create_fk_def_init Unexecuted instantiation: tokenize.c:create_fk_def_init Unexecuted instantiation: treeview.c:create_fk_def_init Unexecuted instantiation: trigger.c:create_fk_def_init Unexecuted instantiation: update.c:create_fk_def_init Unexecuted instantiation: util.c:create_fk_def_init Unexecuted instantiation: vdbe.c:create_fk_def_init Unexecuted instantiation: vdbeapi.c:create_fk_def_init Unexecuted instantiation: vdbeaux.c:create_fk_def_init Unexecuted instantiation: vdbesort.c:create_fk_def_init Unexecuted instantiation: walker.c:create_fk_def_init Unexecuted instantiation: where.c:create_fk_def_init Unexecuted instantiation: wherecode.c:create_fk_def_init Unexecuted instantiation: whereexpr.c:create_fk_def_init Unexecuted instantiation: execute.c:create_fk_def_init Unexecuted instantiation: bind.c:create_fk_def_init Unexecuted instantiation: opcodes.c:create_fk_def_init parse.c:create_fk_def_init Line | Count | Source | 484 | 117 | { | 485 | 117 | create_constraint_def_init(&fk_def->base, table_name, name, | 486 | | false, ENTITY_TYPE_FK); | 487 | 117 | fk_def->child_cols = child_cols; | 488 | 117 | fk_def->parent_name = parent_name; | 489 | 117 | fk_def->parent_cols = parent_cols; | 490 | 117 | } |
Unexecuted instantiation: cursor.c:create_fk_def_init Unexecuted instantiation: delete.c:create_fk_def_init Unexecuted instantiation: hash.c:create_fk_def_init Unexecuted instantiation: insert.c:create_fk_def_init Unexecuted instantiation: pragma.c:create_fk_def_init Unexecuted instantiation: show.c:create_fk_def_init |
491 | | |
492 | | static inline void |
493 | | create_table_def_init(struct create_table_def *table_def, struct Token *name, |
494 | | bool if_not_exists) |
495 | 1.56k | { |
496 | 1.56k | create_entity_def_init(&table_def->base, ENTITY_TYPE_TABLE, NULL, name, |
497 | 1.56k | if_not_exists); |
498 | 1.56k | } Unexecuted instantiation: sql.c:create_table_def_init Unexecuted instantiation: alter.c:create_table_def_init Unexecuted instantiation: build.c:create_table_def_init Unexecuted instantiation: expr.c:create_table_def_init Unexecuted instantiation: func.c:create_table_def_init Unexecuted instantiation: global.c:create_table_def_init Unexecuted instantiation: main.c:create_table_def_init Unexecuted instantiation: malloc.c:create_table_def_init Unexecuted instantiation: mem.c:create_table_def_init Unexecuted instantiation: os.c:create_table_def_init Unexecuted instantiation: os_unix.c:create_table_def_init Unexecuted instantiation: parse_def.c:create_table_def_init Unexecuted instantiation: prepare.c:create_table_def_init Unexecuted instantiation: printf.c:create_table_def_init Unexecuted instantiation: random.c:create_table_def_init Unexecuted instantiation: resolve.c:create_table_def_init Unexecuted instantiation: port.c:create_table_def_init Unexecuted instantiation: select.c:create_table_def_init Unexecuted instantiation: tokenize.c:create_table_def_init Unexecuted instantiation: treeview.c:create_table_def_init Unexecuted instantiation: trigger.c:create_table_def_init Unexecuted instantiation: update.c:create_table_def_init Unexecuted instantiation: util.c:create_table_def_init Unexecuted instantiation: vdbe.c:create_table_def_init Unexecuted instantiation: vdbeapi.c:create_table_def_init Unexecuted instantiation: vdbeaux.c:create_table_def_init Unexecuted instantiation: vdbesort.c:create_table_def_init Unexecuted instantiation: walker.c:create_table_def_init Unexecuted instantiation: where.c:create_table_def_init Unexecuted instantiation: wherecode.c:create_table_def_init Unexecuted instantiation: whereexpr.c:create_table_def_init Unexecuted instantiation: execute.c:create_table_def_init Unexecuted instantiation: bind.c:create_table_def_init Unexecuted instantiation: opcodes.c:create_table_def_init parse.c:create_table_def_init Line | Count | Source | 495 | 1.56k | { | 496 | | create_entity_def_init(&table_def->base, ENTITY_TYPE_TABLE, NULL, name, | 497 | 1.56k | if_not_exists); | 498 | 1.56k | } |
Unexecuted instantiation: cursor.c:create_table_def_init Unexecuted instantiation: delete.c:create_table_def_init Unexecuted instantiation: hash.c:create_table_def_init Unexecuted instantiation: insert.c:create_table_def_init Unexecuted instantiation: pragma.c:create_table_def_init Unexecuted instantiation: show.c:create_table_def_init |
499 | | |
500 | | static inline void |
501 | | create_column_def_init(struct create_column_def *column_def, |
502 | | struct SrcList *table_name, struct Token *name, |
503 | | struct type_def *type_def) |
504 | 6.41k | { |
505 | 6.41k | create_entity_def_init(&column_def->base, ENTITY_TYPE_COLUMN, |
506 | 6.41k | table_name, name, false); |
507 | 6.41k | column_def->type_def = type_def; |
508 | 6.41k | } Unexecuted instantiation: sql.c:create_column_def_init Unexecuted instantiation: alter.c:create_column_def_init Unexecuted instantiation: build.c:create_column_def_init Unexecuted instantiation: expr.c:create_column_def_init Unexecuted instantiation: func.c:create_column_def_init Unexecuted instantiation: global.c:create_column_def_init Unexecuted instantiation: main.c:create_column_def_init Unexecuted instantiation: malloc.c:create_column_def_init Unexecuted instantiation: mem.c:create_column_def_init Unexecuted instantiation: os.c:create_column_def_init Unexecuted instantiation: os_unix.c:create_column_def_init Unexecuted instantiation: parse_def.c:create_column_def_init Unexecuted instantiation: prepare.c:create_column_def_init Unexecuted instantiation: printf.c:create_column_def_init Unexecuted instantiation: random.c:create_column_def_init Unexecuted instantiation: resolve.c:create_column_def_init Unexecuted instantiation: port.c:create_column_def_init Unexecuted instantiation: select.c:create_column_def_init Unexecuted instantiation: tokenize.c:create_column_def_init Unexecuted instantiation: treeview.c:create_column_def_init Unexecuted instantiation: trigger.c:create_column_def_init Unexecuted instantiation: update.c:create_column_def_init Unexecuted instantiation: util.c:create_column_def_init Unexecuted instantiation: vdbe.c:create_column_def_init Unexecuted instantiation: vdbeapi.c:create_column_def_init Unexecuted instantiation: vdbeaux.c:create_column_def_init Unexecuted instantiation: vdbesort.c:create_column_def_init Unexecuted instantiation: walker.c:create_column_def_init Unexecuted instantiation: where.c:create_column_def_init Unexecuted instantiation: wherecode.c:create_column_def_init Unexecuted instantiation: whereexpr.c:create_column_def_init Unexecuted instantiation: execute.c:create_column_def_init Unexecuted instantiation: bind.c:create_column_def_init Unexecuted instantiation: opcodes.c:create_column_def_init parse.c:create_column_def_init Line | Count | Source | 504 | 6.41k | { | 505 | 6.41k | create_entity_def_init(&column_def->base, ENTITY_TYPE_COLUMN, | 506 | | table_name, name, false); | 507 | 6.41k | column_def->type_def = type_def; | 508 | 6.41k | } |
Unexecuted instantiation: cursor.c:create_column_def_init Unexecuted instantiation: delete.c:create_column_def_init Unexecuted instantiation: hash.c:create_column_def_init Unexecuted instantiation: insert.c:create_column_def_init Unexecuted instantiation: pragma.c:create_column_def_init Unexecuted instantiation: show.c:create_column_def_init |
509 | | |
510 | | static inline void |
511 | | create_ck_constraint_parse_def_init(struct create_ck_constraint_parse_def *def) |
512 | 1.56k | { |
513 | 1.56k | rlist_create(&def->checks); |
514 | 1.56k | } Unexecuted instantiation: sql.c:create_ck_constraint_parse_def_init Unexecuted instantiation: alter.c:create_ck_constraint_parse_def_init Unexecuted instantiation: build.c:create_ck_constraint_parse_def_init Unexecuted instantiation: expr.c:create_ck_constraint_parse_def_init Unexecuted instantiation: func.c:create_ck_constraint_parse_def_init Unexecuted instantiation: global.c:create_ck_constraint_parse_def_init Unexecuted instantiation: main.c:create_ck_constraint_parse_def_init Unexecuted instantiation: malloc.c:create_ck_constraint_parse_def_init Unexecuted instantiation: mem.c:create_ck_constraint_parse_def_init Unexecuted instantiation: os.c:create_ck_constraint_parse_def_init Unexecuted instantiation: os_unix.c:create_ck_constraint_parse_def_init Unexecuted instantiation: parse_def.c:create_ck_constraint_parse_def_init Unexecuted instantiation: prepare.c:create_ck_constraint_parse_def_init Unexecuted instantiation: printf.c:create_ck_constraint_parse_def_init Unexecuted instantiation: random.c:create_ck_constraint_parse_def_init Unexecuted instantiation: resolve.c:create_ck_constraint_parse_def_init Unexecuted instantiation: port.c:create_ck_constraint_parse_def_init Unexecuted instantiation: select.c:create_ck_constraint_parse_def_init Unexecuted instantiation: tokenize.c:create_ck_constraint_parse_def_init Unexecuted instantiation: treeview.c:create_ck_constraint_parse_def_init Unexecuted instantiation: trigger.c:create_ck_constraint_parse_def_init Unexecuted instantiation: update.c:create_ck_constraint_parse_def_init Unexecuted instantiation: util.c:create_ck_constraint_parse_def_init Unexecuted instantiation: vdbe.c:create_ck_constraint_parse_def_init Unexecuted instantiation: vdbeapi.c:create_ck_constraint_parse_def_init Unexecuted instantiation: vdbeaux.c:create_ck_constraint_parse_def_init Unexecuted instantiation: vdbesort.c:create_ck_constraint_parse_def_init Unexecuted instantiation: walker.c:create_ck_constraint_parse_def_init Unexecuted instantiation: where.c:create_ck_constraint_parse_def_init Unexecuted instantiation: wherecode.c:create_ck_constraint_parse_def_init Unexecuted instantiation: whereexpr.c:create_ck_constraint_parse_def_init Unexecuted instantiation: execute.c:create_ck_constraint_parse_def_init Unexecuted instantiation: bind.c:create_ck_constraint_parse_def_init Unexecuted instantiation: opcodes.c:create_ck_constraint_parse_def_init parse.c:create_ck_constraint_parse_def_init Line | Count | Source | 512 | 1.56k | { | 513 | 1.56k | rlist_create(&def->checks); | 514 | 1.56k | } |
Unexecuted instantiation: cursor.c:create_ck_constraint_parse_def_init Unexecuted instantiation: delete.c:create_ck_constraint_parse_def_init Unexecuted instantiation: hash.c:create_ck_constraint_parse_def_init Unexecuted instantiation: insert.c:create_ck_constraint_parse_def_init Unexecuted instantiation: pragma.c:create_ck_constraint_parse_def_init Unexecuted instantiation: show.c:create_ck_constraint_parse_def_init |
515 | | |
516 | | static inline void |
517 | | create_fk_constraint_parse_def_init(struct create_fk_constraint_parse_def *def) |
518 | 1.56k | { |
519 | 1.56k | rlist_create(&def->fkeys); |
520 | 1.56k | def->is_used = true; |
521 | 1.56k | } Unexecuted instantiation: sql.c:create_fk_constraint_parse_def_init Unexecuted instantiation: alter.c:create_fk_constraint_parse_def_init Unexecuted instantiation: build.c:create_fk_constraint_parse_def_init Unexecuted instantiation: expr.c:create_fk_constraint_parse_def_init Unexecuted instantiation: func.c:create_fk_constraint_parse_def_init Unexecuted instantiation: global.c:create_fk_constraint_parse_def_init Unexecuted instantiation: main.c:create_fk_constraint_parse_def_init Unexecuted instantiation: malloc.c:create_fk_constraint_parse_def_init Unexecuted instantiation: mem.c:create_fk_constraint_parse_def_init Unexecuted instantiation: os.c:create_fk_constraint_parse_def_init Unexecuted instantiation: os_unix.c:create_fk_constraint_parse_def_init Unexecuted instantiation: parse_def.c:create_fk_constraint_parse_def_init Unexecuted instantiation: prepare.c:create_fk_constraint_parse_def_init Unexecuted instantiation: printf.c:create_fk_constraint_parse_def_init Unexecuted instantiation: random.c:create_fk_constraint_parse_def_init Unexecuted instantiation: resolve.c:create_fk_constraint_parse_def_init Unexecuted instantiation: port.c:create_fk_constraint_parse_def_init Unexecuted instantiation: select.c:create_fk_constraint_parse_def_init Unexecuted instantiation: tokenize.c:create_fk_constraint_parse_def_init Unexecuted instantiation: treeview.c:create_fk_constraint_parse_def_init Unexecuted instantiation: trigger.c:create_fk_constraint_parse_def_init Unexecuted instantiation: update.c:create_fk_constraint_parse_def_init Unexecuted instantiation: util.c:create_fk_constraint_parse_def_init Unexecuted instantiation: vdbe.c:create_fk_constraint_parse_def_init Unexecuted instantiation: vdbeapi.c:create_fk_constraint_parse_def_init Unexecuted instantiation: vdbeaux.c:create_fk_constraint_parse_def_init Unexecuted instantiation: vdbesort.c:create_fk_constraint_parse_def_init Unexecuted instantiation: walker.c:create_fk_constraint_parse_def_init Unexecuted instantiation: where.c:create_fk_constraint_parse_def_init Unexecuted instantiation: wherecode.c:create_fk_constraint_parse_def_init Unexecuted instantiation: whereexpr.c:create_fk_constraint_parse_def_init Unexecuted instantiation: execute.c:create_fk_constraint_parse_def_init Unexecuted instantiation: bind.c:create_fk_constraint_parse_def_init Unexecuted instantiation: opcodes.c:create_fk_constraint_parse_def_init parse.c:create_fk_constraint_parse_def_init Line | Count | Source | 518 | 1.56k | { | 519 | 1.56k | rlist_create(&def->fkeys); | 520 | | def->is_used = true; | 521 | 1.56k | } |
Unexecuted instantiation: cursor.c:create_fk_constraint_parse_def_init Unexecuted instantiation: delete.c:create_fk_constraint_parse_def_init Unexecuted instantiation: hash.c:create_fk_constraint_parse_def_init Unexecuted instantiation: insert.c:create_fk_constraint_parse_def_init Unexecuted instantiation: pragma.c:create_fk_constraint_parse_def_init Unexecuted instantiation: show.c:create_fk_constraint_parse_def_init |
522 | | |
523 | | static inline void |
524 | | create_view_def_init(struct create_view_def *view_def, struct Token *name, |
525 | | struct Token *create, struct ExprList *aliases, |
526 | | struct Select *select, bool if_not_exists) |
527 | 0 | { |
528 | 0 | create_entity_def_init(&view_def->base, ENTITY_TYPE_VIEW, NULL, name, |
529 | 0 | if_not_exists); |
530 | 0 | view_def->create_start = create; |
531 | 0 | view_def->select = select; |
532 | 0 | view_def->aliases = aliases; |
533 | 0 | } Unexecuted instantiation: sql.c:create_view_def_init Unexecuted instantiation: alter.c:create_view_def_init Unexecuted instantiation: build.c:create_view_def_init Unexecuted instantiation: expr.c:create_view_def_init Unexecuted instantiation: func.c:create_view_def_init Unexecuted instantiation: global.c:create_view_def_init Unexecuted instantiation: main.c:create_view_def_init Unexecuted instantiation: malloc.c:create_view_def_init Unexecuted instantiation: mem.c:create_view_def_init Unexecuted instantiation: os.c:create_view_def_init Unexecuted instantiation: os_unix.c:create_view_def_init Unexecuted instantiation: parse_def.c:create_view_def_init Unexecuted instantiation: prepare.c:create_view_def_init Unexecuted instantiation: printf.c:create_view_def_init Unexecuted instantiation: random.c:create_view_def_init Unexecuted instantiation: resolve.c:create_view_def_init Unexecuted instantiation: port.c:create_view_def_init Unexecuted instantiation: select.c:create_view_def_init Unexecuted instantiation: tokenize.c:create_view_def_init Unexecuted instantiation: treeview.c:create_view_def_init Unexecuted instantiation: trigger.c:create_view_def_init Unexecuted instantiation: update.c:create_view_def_init Unexecuted instantiation: util.c:create_view_def_init Unexecuted instantiation: vdbe.c:create_view_def_init Unexecuted instantiation: vdbeapi.c:create_view_def_init Unexecuted instantiation: vdbeaux.c:create_view_def_init Unexecuted instantiation: vdbesort.c:create_view_def_init Unexecuted instantiation: walker.c:create_view_def_init Unexecuted instantiation: where.c:create_view_def_init Unexecuted instantiation: wherecode.c:create_view_def_init Unexecuted instantiation: whereexpr.c:create_view_def_init Unexecuted instantiation: execute.c:create_view_def_init Unexecuted instantiation: bind.c:create_view_def_init Unexecuted instantiation: opcodes.c:create_view_def_init Unexecuted instantiation: parse.c:create_view_def_init Unexecuted instantiation: cursor.c:create_view_def_init Unexecuted instantiation: delete.c:create_view_def_init Unexecuted instantiation: hash.c:create_view_def_init Unexecuted instantiation: insert.c:create_view_def_init Unexecuted instantiation: pragma.c:create_view_def_init Unexecuted instantiation: show.c:create_view_def_init |
534 | | |
535 | | static inline void |
536 | | create_fk_constraint_parse_def_destroy(struct create_fk_constraint_parse_def *d) |
537 | 7.05k | { |
538 | 7.05k | if (!d->is_used) |
539 | 5.49k | return; |
540 | 1.56k | struct fk_constraint_parse *fk; |
541 | 1.56k | rlist_foreach_entry(fk, &d->fkeys, link) |
542 | 117 | sql_expr_list_delete(fk->selfref_cols); |
543 | 1.56k | } Unexecuted instantiation: sql.c:create_fk_constraint_parse_def_destroy Unexecuted instantiation: alter.c:create_fk_constraint_parse_def_destroy Unexecuted instantiation: build.c:create_fk_constraint_parse_def_destroy Unexecuted instantiation: expr.c:create_fk_constraint_parse_def_destroy Unexecuted instantiation: func.c:create_fk_constraint_parse_def_destroy Unexecuted instantiation: global.c:create_fk_constraint_parse_def_destroy Unexecuted instantiation: main.c:create_fk_constraint_parse_def_destroy Unexecuted instantiation: malloc.c:create_fk_constraint_parse_def_destroy Unexecuted instantiation: mem.c:create_fk_constraint_parse_def_destroy Unexecuted instantiation: os.c:create_fk_constraint_parse_def_destroy Unexecuted instantiation: os_unix.c:create_fk_constraint_parse_def_destroy Unexecuted instantiation: parse_def.c:create_fk_constraint_parse_def_destroy prepare.c:create_fk_constraint_parse_def_destroy Line | Count | Source | 537 | 7.05k | { | 538 | 7.05k | if (!d->is_used) | 539 | 5.49k | return; | 540 | 1.56k | struct fk_constraint_parse *fk; | 541 | 1.56k | rlist_foreach_entry(fk, &d->fkeys, link) | 542 | 117 | sql_expr_list_delete(fk->selfref_cols); | 543 | 1.56k | } |
Unexecuted instantiation: printf.c:create_fk_constraint_parse_def_destroy Unexecuted instantiation: random.c:create_fk_constraint_parse_def_destroy Unexecuted instantiation: resolve.c:create_fk_constraint_parse_def_destroy Unexecuted instantiation: port.c:create_fk_constraint_parse_def_destroy Unexecuted instantiation: select.c:create_fk_constraint_parse_def_destroy Unexecuted instantiation: tokenize.c:create_fk_constraint_parse_def_destroy Unexecuted instantiation: treeview.c:create_fk_constraint_parse_def_destroy Unexecuted instantiation: trigger.c:create_fk_constraint_parse_def_destroy Unexecuted instantiation: update.c:create_fk_constraint_parse_def_destroy Unexecuted instantiation: util.c:create_fk_constraint_parse_def_destroy Unexecuted instantiation: vdbe.c:create_fk_constraint_parse_def_destroy Unexecuted instantiation: vdbeapi.c:create_fk_constraint_parse_def_destroy Unexecuted instantiation: vdbeaux.c:create_fk_constraint_parse_def_destroy Unexecuted instantiation: vdbesort.c:create_fk_constraint_parse_def_destroy Unexecuted instantiation: walker.c:create_fk_constraint_parse_def_destroy Unexecuted instantiation: where.c:create_fk_constraint_parse_def_destroy Unexecuted instantiation: wherecode.c:create_fk_constraint_parse_def_destroy Unexecuted instantiation: whereexpr.c:create_fk_constraint_parse_def_destroy Unexecuted instantiation: execute.c:create_fk_constraint_parse_def_destroy Unexecuted instantiation: bind.c:create_fk_constraint_parse_def_destroy Unexecuted instantiation: opcodes.c:create_fk_constraint_parse_def_destroy Unexecuted instantiation: parse.c:create_fk_constraint_parse_def_destroy Unexecuted instantiation: cursor.c:create_fk_constraint_parse_def_destroy Unexecuted instantiation: delete.c:create_fk_constraint_parse_def_destroy Unexecuted instantiation: hash.c:create_fk_constraint_parse_def_destroy Unexecuted instantiation: insert.c:create_fk_constraint_parse_def_destroy Unexecuted instantiation: pragma.c:create_fk_constraint_parse_def_destroy Unexecuted instantiation: show.c:create_fk_constraint_parse_def_destroy |
544 | | |
545 | | /** Save parsed START TRANSACTION statement. */ |
546 | | void |
547 | | sql_ast_init_start_transaction(struct Parse *parse); |
548 | | |
549 | | /** Save parsed COMMIT statement. */ |
550 | | void |
551 | | sql_ast_init_commit(struct Parse *parse); |
552 | | |
553 | | /** Save parsed ROLLBACK statement. */ |
554 | | void |
555 | | sql_ast_init_rollback(struct Parse *parse); |
556 | | |
557 | | /** Save parsed SAVEPOINT statement. */ |
558 | | void |
559 | | sql_ast_init_savepoint(struct Parse *parse, const struct Token *name); |
560 | | |
561 | | /** Save parsed RELEASE SAVEPOINT statement. */ |
562 | | void |
563 | | sql_ast_init_release_savepoint(struct Parse *parse, const struct Token *name); |
564 | | |
565 | | /** Save parsed ROLLBACK TO SAVEPOINT statement. */ |
566 | | void |
567 | | sql_ast_init_rollback_to_savepoint(struct Parse *parse, |
568 | | const struct Token *name); |
569 | | |
570 | | #endif /* TARANTOOL_BOX_SQL_PARSE_DEF_H_INCLUDED */ |