Drizzled Public API Documentation
Main Page
Related Pages
Modules
Namespaces
Classes
Files
File List
File Members
copy_field.h
1
/* -*- mode: c++; c-basic-offset: 2; indent-tabs-mode: nil; -*-
2
* vim:expandtab:shiftwidth=2:tabstop=2:smarttab:
3
*
4
* Copyright (C) 2008 Sun Microsystems, Inc.
5
*
6
* This program is free software; you can redistribute it and/or modify
7
* it under the terms of the GNU General Public License as published by
8
* the Free Software Foundation; version 2 of the License.
9
*
10
* This program is distributed in the hope that it will be useful,
11
* but WITHOUT ANY WARRANTY; without even the implied warranty of
12
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
13
* GNU General Public License for more details.
14
*
15
* You should have received a copy of the GNU General Public License
16
* along with this program; if not, write to the Free Software
17
* Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA
18
*/
19
20
21
#pragma once
22
23
#include <drizzled/memory/sql_alloc.h>
24
#include <drizzled/sql_string.h>
25
26
27
namespace
drizzled {
28
32
class
CopyField
:
public
memory::SqlAlloc
33
{
38
typedef
void
Copy_func
(
CopyField
*);
39
Copy_func
*get_copy_func(
Field
*to,
Field
*from);
40
41
public
:
42
unsigned
char
*from_ptr;
43
unsigned
char
*to_ptr;
44
unsigned
char
*from_null_ptr;
45
unsigned
char
*to_null_ptr;
46
bool
*null_row;
47
uint32_t from_bit;
48
uint32_t to_bit;
49
uint32_t from_length;
50
uint32_t to_length;
51
Field
*from_field;
52
Field
*to_field;
53
String
tmp;
// For items
54
55
CopyField
() :
56
from_ptr(0),
57
to_ptr(0),
58
from_null_ptr(0),
59
to_null_ptr(0),
60
null_row(0),
61
from_bit(0),
62
to_bit(0),
63
from_length(0),
64
to_length(0),
65
from_field(0),
66
to_field(0)
67
{}
68
69
~
CopyField
()
70
{}
71
72
void
set(Field *to,Field *from,
bool
save);
// Field to field
73
void
set(
unsigned
char
*to,Field *from);
// Field to string
74
void (*do_copy)(CopyField *);
75
void (*do_copy2)(CopyField *);
// Used to handle null values
76
};
77
78
}
/* namespace drizzled */
79
drizzled
copy_field.h
Generated on Thu Aug 29 2013 10:00:19 for drizzle by
1.8.4