Drizzled Public API Documentation
Main Page
Related Pages
Modules
Namespaces
Classes
Files
File List
File Members
direct_ref.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
#pragma once
21
22
#include <drizzled/item/ref.h>
23
24
namespace
drizzled {
25
26
/*
27
The same as Item_ref, but get value from val_* family of method to get
28
value of item on which it referred instead of result* family.
29
*/
30
class
Item_direct_ref
:
public
Item_ref
31
{
32
public
:
33
Item_direct_ref
(
Name_resolution_context
*context_arg,
Item
**item,
34
const
char
*table_name_arg,
35
const
char
*field_name_arg,
36
bool
alias_name_used_arg=
false
)
37
:
Item_ref
(context_arg, item, table_name_arg,
38
field_name_arg, alias_name_used_arg)
39
{}
40
/* Constructor need to process subselect with temporary tables (see Item) */
41
Item_direct_ref
(
Session
*session,
Item_direct_ref
*item) :
Item_ref
(session, item) {}
42
43
double
val_real
();
44
int64_t
val_int
();
45
String
*
val_str
(
String
* tmp);
46
type::Decimal
*
val_decimal
(
type::Decimal
*);
47
bool
val_bool
();
48
bool
is_null
();
49
bool
get_date
(
type::Time
<ime,uint32_t fuzzydate);
50
virtual
Ref_Type ref_type() {
return
DIRECT_REF; }
51
};
52
53
}
/* namespace drizzled */
54
drizzled::Item_ref
Definition:
ref.h:26
drizzled::Item_direct_ref::val_real
double val_real()
Definition:
direct_ref.cc:26
drizzled::Session
Definition:
session.h:81
drizzled::Item_direct_ref::val_bool
bool val_bool()
Definition:
direct_ref.cc:57
drizzled::type::Decimal
Definition:
decimal.h:183
drizzled::Name_resolution_context
Definition:
name_resolution_context.h:43
drizzled::Item
Definition:
item.h:56
drizzled::Item_direct_ref::val_int
int64_t val_int()
Definition:
direct_ref.cc:34
drizzled::Item_direct_ref
Definition:
direct_ref.h:30
drizzled::type::Time
Definition:
time.h:106
drizzled::Item_direct_ref::get_date
bool get_date(type::Time <ime, uint32_t fuzzydate)
Definition:
direct_ref.cc:71
drizzled::Item_direct_ref::is_null
bool is_null()
Definition:
direct_ref.cc:65
drizzled::Item_direct_ref::val_str
String * val_str(String *tmp)
Definition:
direct_ref.cc:42
drizzled::String
Definition:
sql_string.h:57
drizzled::Item_direct_ref::val_decimal
type::Decimal * val_decimal(type::Decimal *)
Definition:
direct_ref.cc:49
drizzled
item
direct_ref.h
Generated on Mon Apr 28 2014 10:06:58 for drizzle by
1.8.6