Skip to content
Projects
Groups
Snippets
Help
Loading...
Help
Support
Keyboard shortcuts
?
Submit feedback
Contribute to GitLab
Sign in / Register
Toggle navigation
M
MariaDB
Project overview
Project overview
Details
Activity
Releases
Repository
Repository
Files
Commits
Branches
Tags
Contributors
Graph
Compare
Issues
0
Issues
0
List
Boards
Labels
Milestones
Merge Requests
0
Merge Requests
0
CI / CD
CI / CD
Pipelines
Jobs
Schedules
Analytics
Analytics
CI / CD
Repository
Value Stream
Wiki
Wiki
Snippets
Snippets
Members
Members
Collapse sidebar
Close sidebar
Activity
Graph
Create a new issue
Jobs
Commits
Issue Boards
Open sidebar
nexedi
MariaDB
Commits
e0711894
Commit
e0711894
authored
Sep 20, 2018
by
Alexander Barkov
Browse files
Options
Browse Files
Download
Email Patches
Plain Diff
MDEV-17250 Remove unused Item_copy_xxx
parent
935a163d
Changes
2
Hide whitespace changes
Inline
Side-by-side
Showing
2 changed files
with
0 additions
and
265 deletions
+0
-265
sql/item.cc
sql/item.cc
+0
-175
sql/item.h
sql/item.h
+0
-90
No files found.
sql/item.cc
View file @
e0711894
...
...
@@ -4169,31 +4169,6 @@ void Item_param::make_field(Send_field *field)
field
->
type
=
m_out_param_info
->
type
;
}
/****************************************************************************
Item_copy
****************************************************************************/
Item_copy
*
Item_copy
::
create
(
Item
*
item
)
{
switch
(
item
->
result_type
())
{
case
STRING_RESULT
:
return
new
Item_copy_string
(
item
);
case
REAL_RESULT
:
return
new
Item_copy_float
(
item
);
case
INT_RESULT
:
return
item
->
unsigned_flag
?
new
Item_copy_uint
(
item
)
:
new
Item_copy_int
(
item
);
case
DECIMAL_RESULT
:
return
new
Item_copy_decimal
(
item
);
case
TIME_RESULT
:
case
ROW_RESULT
:
case
IMPOSSIBLE_RESULT
:
DBUG_ASSERT
(
0
);
}
/* should not happen */
return
NULL
;
}
/****************************************************************************
Item_copy_string
...
...
@@ -4251,156 +4226,6 @@ my_decimal *Item_copy_string::val_decimal(my_decimal *decimal_value)
}
/****************************************************************************
Item_copy_int
****************************************************************************/
void
Item_copy_int
::
copy
()
{
cached_value
=
item
->
val_int
();
null_value
=
item
->
null_value
;
}
static
int
save_int_value_in_field
(
Field
*
,
longlong
,
bool
,
bool
);
int
Item_copy_int
::
save_in_field
(
Field
*
field
,
bool
no_conversions
)
{
return
save_int_value_in_field
(
field
,
cached_value
,
null_value
,
unsigned_flag
);
}
String
*
Item_copy_int
::
val_str
(
String
*
str
)
{
if
(
null_value
)
return
(
String
*
)
0
;
str
->
set
(
cached_value
,
&
my_charset_bin
);
return
str
;
}
my_decimal
*
Item_copy_int
::
val_decimal
(
my_decimal
*
decimal_value
)
{
if
(
null_value
)
return
(
my_decimal
*
)
0
;
int2my_decimal
(
E_DEC_FATAL_ERROR
,
cached_value
,
unsigned_flag
,
decimal_value
);
return
decimal_value
;
}
/****************************************************************************
Item_copy_uint
****************************************************************************/
String
*
Item_copy_uint
::
val_str
(
String
*
str
)
{
if
(
null_value
)
return
(
String
*
)
0
;
str
->
set
((
ulonglong
)
cached_value
,
&
my_charset_bin
);
return
str
;
}
/****************************************************************************
Item_copy_float
****************************************************************************/
String
*
Item_copy_float
::
val_str
(
String
*
str
)
{
if
(
null_value
)
return
(
String
*
)
0
;
else
{
double
nr
=
val_real
();
str
->
set_real
(
nr
,
decimals
,
&
my_charset_bin
);
return
str
;
}
}
my_decimal
*
Item_copy_float
::
val_decimal
(
my_decimal
*
decimal_value
)
{
if
(
null_value
)
return
(
my_decimal
*
)
0
;
else
{
double
nr
=
val_real
();
double2my_decimal
(
E_DEC_FATAL_ERROR
,
nr
,
decimal_value
);
return
decimal_value
;
}
}
int
Item_copy_float
::
save_in_field
(
Field
*
field
,
bool
no_conversions
)
{
if
(
null_value
)
return
set_field_to_null
(
field
);
field
->
set_notnull
();
return
field
->
store
(
cached_value
);
}
/****************************************************************************
Item_copy_decimal
****************************************************************************/
int
Item_copy_decimal
::
save_in_field
(
Field
*
field
,
bool
no_conversions
)
{
if
(
null_value
)
return
set_field_to_null
(
field
);
field
->
set_notnull
();
return
field
->
store_decimal
(
&
cached_value
);
}
String
*
Item_copy_decimal
::
val_str
(
String
*
result
)
{
if
(
null_value
)
return
(
String
*
)
0
;
result
->
set_charset
(
&
my_charset_bin
);
my_decimal2string
(
E_DEC_FATAL_ERROR
,
&
cached_value
,
0
,
0
,
0
,
result
);
return
result
;
}
double
Item_copy_decimal
::
val_real
()
{
if
(
null_value
)
return
0.0
;
else
{
double
result
;
my_decimal2double
(
E_DEC_FATAL_ERROR
,
&
cached_value
,
&
result
);
return
result
;
}
}
longlong
Item_copy_decimal
::
val_int
()
{
if
(
null_value
)
return
LL
(
0
);
else
{
longlong
result
;
my_decimal2int
(
E_DEC_FATAL_ERROR
,
&
cached_value
,
unsigned_flag
,
&
result
);
return
result
;
}
}
void
Item_copy_decimal
::
copy
()
{
my_decimal
*
nr
=
item
->
val_decimal
(
&
cached_value
);
if
(
nr
&&
nr
!=
&
cached_value
)
my_decimal2decimal
(
nr
,
&
cached_value
);
null_value
=
item
->
null_value
;
}
/*
Functions to convert item to field (for send_result_set_metadata)
*/
...
...
sql/item.h
View file @
e0711894
...
...
@@ -3664,13 +3664,6 @@ class Item_copy :public Item
}
public:
/**
Factory method to create the appropriate subclass dependent on the type of
the original item.
@param item the original item.
*/
static
Item_copy
*
create
(
Item
*
item
);
/**
Update the cache with the value of the original item
...
...
@@ -3732,89 +3725,6 @@ class Item_copy_string : public Item_copy
};
class
Item_copy_int
:
public
Item_copy
{
protected:
longlong
cached_value
;
public:
Item_copy_int
(
Item
*
i
)
:
Item_copy
(
i
)
{}
int
save_in_field
(
Field
*
field
,
bool
no_conversions
);
virtual
String
*
val_str
(
String
*
);
virtual
my_decimal
*
val_decimal
(
my_decimal
*
);
virtual
double
val_real
()
{
return
null_value
?
0.0
:
(
double
)
cached_value
;
}
virtual
longlong
val_int
()
{
return
null_value
?
LL
(
0
)
:
cached_value
;
}
virtual
void
copy
();
};
class
Item_copy_uint
:
public
Item_copy_int
{
public:
Item_copy_uint
(
Item
*
item
)
:
Item_copy_int
(
item
)
{
unsigned_flag
=
1
;
}
String
*
val_str
(
String
*
);
double
val_real
()
{
return
null_value
?
0.0
:
(
double
)
(
ulonglong
)
cached_value
;
}
};
class
Item_copy_float
:
public
Item_copy
{
protected:
double
cached_value
;
public:
Item_copy_float
(
Item
*
i
)
:
Item_copy
(
i
)
{}
int
save_in_field
(
Field
*
field
,
bool
no_conversions
);
String
*
val_str
(
String
*
);
my_decimal
*
val_decimal
(
my_decimal
*
);
double
val_real
()
{
return
null_value
?
0.0
:
cached_value
;
}
longlong
val_int
()
{
return
(
longlong
)
rint
(
val_real
());
}
void
copy
()
{
cached_value
=
item
->
val_real
();
null_value
=
item
->
null_value
;
}
};
class
Item_copy_decimal
:
public
Item_copy
{
protected:
my_decimal
cached_value
;
public:
Item_copy_decimal
(
Item
*
i
)
:
Item_copy
(
i
)
{}
int
save_in_field
(
Field
*
field
,
bool
no_conversions
);
String
*
val_str
(
String
*
);
my_decimal
*
val_decimal
(
my_decimal
*
)
{
return
null_value
?
NULL
:
&
cached_value
;
}
double
val_real
();
longlong
val_int
();
void
copy
();
};
/*
Cached_item_XXX objects are not exactly caches. They do the following:
...
...
Write
Preview
Markdown
is supported
0%
Try again
or
attach a new file
Attach a file
Cancel
You are about to add
0
people
to the discussion. Proceed with caution.
Finish editing this message first!
Cancel
Please
register
or
sign in
to comment