InnoDB Plugin  1.0
row0ext.h
Go to the documentation of this file.
1 /*****************************************************************************
2 
3 Copyright (c) 2006, 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 row0ext_h
27 #define row0ext_h
28 
29 #include "univ.i"
30 #include "row0types.h"
31 #include "data0types.h"
32 #include "mem0mem.h"
33 #include "dict0types.h"
34 
35 /********************************************************************/
38 UNIV_INTERN
39 row_ext_t*
41 /*===========*/
42  ulint n_ext,
43  const ulint* ext,
47  ulint flags,
48  const dtuple_t* tuple,
54  mem_heap_t* heap);
56 /********************************************************************/
60 UNIV_INLINE
61 const byte*
63 /*===============*/
64  const row_ext_t* ext,
65  ulint i,
66  ulint* len);
69 /********************************************************************/
73 UNIV_INLINE
74 const byte*
76 /*===========*/
77  const row_ext_t* ext,
78  ulint col,
82  ulint* len);
87 struct row_ext_t{
88  ulint n_ext;
89  const ulint* ext;
90  byte* buf;
91  ulint max_len;
95  ulint len[1];
96 };
97 
98 #ifndef UNIV_NONINL
99 #include "row0ext.ic"
100 #endif
101 
102 #endif