InnoDB Plugin  1.0
que0types.h
Go to the documentation of this file.
1 /*****************************************************************************
2 
3 Copyright (c) 1996, 2009, Oracle and/or its affiliates. All Rights Reserved.
4 
5 This program is free software; you can redistribute it and/or modify it under
6 the terms of the GNU General Public License as published by the Free Software
7 Foundation; version 2 of the License.
8 
9 This program is distributed in the hope that it will be useful, but WITHOUT
10 ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS
11 FOR A PARTICULAR PURPOSE. See the GNU General Public License for more details.
12 
13 You should have received a copy of the GNU General Public License along with
14 this program; if not, write to the Free Software Foundation, Inc.,
15 51 Franklin Street, Suite 500, Boston, MA 02110-1335 USA
16 
17 *****************************************************************************/
18 
19 /**************************************************/
26 #ifndef que0types_h
27 #define que0types_h
28 
29 #include "data0data.h"
30 #include "dict0types.h"
31 
32 /* Pseudotype for all graph nodes */
33 typedef void que_node_t;
34 
35 /* Query graph root is a fork node */
36 typedef struct que_fork_t que_t;
37 
38 struct que_thr_t;
39 
40 /* Common struct at the beginning of each query graph node; the name of this
41 substruct must be 'common' */
42 
43 struct que_common_t{
44  ulint type;
45  que_node_t* parent;
46  que_node_t* brother;/* pointer to a possible brother node */
48  ulint val_buf_size;
49  /* buffer size for the evaluated value data,
50  if the buffer has been allocated dynamically:
51  if this field is != 0, and the node is a
52  symbol node or a function node, then we
53  have to free the data field in val
54  explicitly */
55 };
56 
57 #endif