1591
return create(thd, param_1, param_2, param_3);
1592
return create(session, param_1, param_2, param_3);
1595
1596
Create_func_abs Create_func_abs::s_singleton;
1598
Create_func_abs::create(THD *thd, Item *arg1)
1599
Create_func_abs::create(Session *session, Item *arg1)
1600
return new (thd->mem_root) Item_func_abs(arg1);
1601
return new (session->mem_root) Item_func_abs(arg1);
1604
1605
Create_func_acos Create_func_acos::s_singleton;
1607
Create_func_acos::create(THD *thd, Item *arg1)
1608
Create_func_acos::create(Session *session, Item *arg1)
1609
return new (thd->mem_root) Item_func_acos(arg1);
1610
return new (session->mem_root) Item_func_acos(arg1);
1613
1614
Create_func_addtime Create_func_addtime::s_singleton;
1616
Create_func_addtime::create(THD *thd, Item *arg1, Item *arg2)
1617
Create_func_addtime::create(Session *session, Item *arg1, Item *arg2)
1618
return new (thd->mem_root) Item_func_add_time(arg1, arg2, 0, 0);
1619
return new (session->mem_root) Item_func_add_time(arg1, arg2, 0, 0);
1622
1623
Create_func_asin Create_func_asin::s_singleton;
1625
Create_func_asin::create(THD *thd, Item *arg1)
1626
Create_func_asin::create(Session *session, Item *arg1)
1627
return new (thd->mem_root) Item_func_asin(arg1);
1628
return new (session->mem_root) Item_func_asin(arg1);
1631
1632
Create_func_atan Create_func_atan::s_singleton;
1634
Create_func_atan::create_native(THD *thd, LEX_STRING name,
1635
Create_func_atan::create_native(Session *session, LEX_STRING name,
1635
1636
List<Item> *item_list)
1637
1638
Item* func= NULL;
1668
1669
Create_func_benchmark Create_func_benchmark::s_singleton;
1671
Create_func_benchmark::create(THD *thd, Item *arg1, Item *arg2)
1672
Create_func_benchmark::create(Session *session, Item *arg1, Item *arg2)
1673
return new (thd->mem_root) Item_func_benchmark(arg1, arg2);
1674
return new (session->mem_root) Item_func_benchmark(arg1, arg2);
1677
1678
Create_func_bin Create_func_bin::s_singleton;
1680
Create_func_bin::create(THD *thd, Item *arg1)
1681
Create_func_bin::create(Session *session, Item *arg1)
1682
Item *i10= new (thd->mem_root) Item_int((int32_t) 10,2);
1683
Item *i2= new (thd->mem_root) Item_int((int32_t) 2,1);
1684
return new (thd->mem_root) Item_func_conv(arg1, i10, i2);
1683
Item *i10= new (session->mem_root) Item_int((int32_t) 10,2);
1684
Item *i2= new (session->mem_root) Item_int((int32_t) 2,1);
1685
return new (session->mem_root) Item_func_conv(arg1, i10, i2);
1688
1689
Create_func_bit_count Create_func_bit_count::s_singleton;
1691
Create_func_bit_count::create(THD *thd, Item *arg1)
1692
Create_func_bit_count::create(Session *session, Item *arg1)
1693
return new (thd->mem_root) Item_func_bit_count(arg1);
1694
return new (session->mem_root) Item_func_bit_count(arg1);
1697
1698
Create_func_bit_length Create_func_bit_length::s_singleton;
1700
Create_func_bit_length::create(THD *thd, Item *arg1)
1701
Create_func_bit_length::create(Session *session, Item *arg1)
1702
return new (thd->mem_root) Item_func_bit_length(arg1);
1703
return new (session->mem_root) Item_func_bit_length(arg1);
1706
1707
Create_func_ceiling Create_func_ceiling::s_singleton;
1709
Create_func_ceiling::create(THD *thd, Item *arg1)
1710
Create_func_ceiling::create(Session *session, Item *arg1)
1711
return new (thd->mem_root) Item_func_ceiling(arg1);
1712
return new (session->mem_root) Item_func_ceiling(arg1);
1715
1716
Create_func_char_length Create_func_char_length::s_singleton;
1718
Create_func_char_length::create(THD *thd, Item *arg1)
1719
Create_func_char_length::create(Session *session, Item *arg1)
1720
return new (thd->mem_root) Item_func_char_length(arg1);
1721
return new (session->mem_root) Item_func_char_length(arg1);
1724
1725
Create_func_coercibility Create_func_coercibility::s_singleton;
1727
Create_func_coercibility::create(THD *thd, Item *arg1)
1728
Create_func_coercibility::create(Session *session, Item *arg1)
1729
return new (thd->mem_root) Item_func_coercibility(arg1);
1730
return new (session->mem_root) Item_func_coercibility(arg1);
1733
1734
Create_func_concat Create_func_concat::s_singleton;
1736
Create_func_concat::create_native(THD *thd, LEX_STRING name,
1737
Create_func_concat::create_native(Session *session, LEX_STRING name,
1737
1738
List<Item> *item_list)
1739
1740
int arg_count= 0;
1772
return new (thd->mem_root) Item_func_concat_ws(*item_list);
1773
return new (session->mem_root) Item_func_concat_ws(*item_list);
1776
1777
Create_func_connection_id Create_func_connection_id::s_singleton;
1779
Create_func_connection_id::create(THD *thd)
1780
Create_func_connection_id::create(Session *session)
1781
return new (thd->mem_root) Item_func_connection_id();
1782
return new (session->mem_root) Item_func_connection_id();
1785
1786
Create_func_conv Create_func_conv::s_singleton;
1788
Create_func_conv::create(THD *thd, Item *arg1, Item *arg2, Item *arg3)
1789
Create_func_conv::create(Session *session, Item *arg1, Item *arg2, Item *arg3)
1790
return new (thd->mem_root) Item_func_conv(arg1, arg2, arg3);
1791
return new (session->mem_root) Item_func_conv(arg1, arg2, arg3);
1794
1795
Create_func_cos Create_func_cos::s_singleton;
1797
Create_func_cos::create(THD *thd, Item *arg1)
1798
Create_func_cos::create(Session *session, Item *arg1)
1799
return new (thd->mem_root) Item_func_cos(arg1);
1800
return new (session->mem_root) Item_func_cos(arg1);
1803
1804
Create_func_cot Create_func_cot::s_singleton;
1806
Create_func_cot::create(THD *thd, Item *arg1)
1807
Create_func_cot::create(Session *session, Item *arg1)
1808
Item *i1= new (thd->mem_root) Item_int((char*) "1", 1, 1);
1809
Item *i2= new (thd->mem_root) Item_func_tan(arg1);
1810
return new (thd->mem_root) Item_func_div(i1, i2);
1809
Item *i1= new (session->mem_root) Item_int((char*) "1", 1, 1);
1810
Item *i2= new (session->mem_root) Item_func_tan(arg1);
1811
return new (session->mem_root) Item_func_div(i1, i2);
1813
1814
Create_func_date_format Create_func_date_format::s_singleton;
1816
Create_func_date_format::create(THD *thd, Item *arg1, Item *arg2)
1817
Create_func_date_format::create(Session *session, Item *arg1, Item *arg2)
1818
return new (thd->mem_root) Item_func_date_format(arg1, arg2, 0);
1819
return new (session->mem_root) Item_func_date_format(arg1, arg2, 0);
1822
1823
Create_func_datediff Create_func_datediff::s_singleton;
1825
Create_func_datediff::create(THD *thd, Item *arg1, Item *arg2)
1826
Create_func_datediff::create(Session *session, Item *arg1, Item *arg2)
1827
Item *i1= new (thd->mem_root) Item_func_to_days(arg1);
1828
Item *i2= new (thd->mem_root) Item_func_to_days(arg2);
1828
Item *i1= new (session->mem_root) Item_func_to_days(arg1);
1829
Item *i2= new (session->mem_root) Item_func_to_days(arg2);
1830
return new (thd->mem_root) Item_func_minus(i1, i2);
1831
return new (session->mem_root) Item_func_minus(i1, i2);
1834
1835
Create_func_dayname Create_func_dayname::s_singleton;
1837
Create_func_dayname::create(THD *thd, Item *arg1)
1838
Create_func_dayname::create(Session *session, Item *arg1)
1839
return new (thd->mem_root) Item_func_dayname(arg1);
1840
return new (session->mem_root) Item_func_dayname(arg1);
1843
1844
Create_func_dayofmonth Create_func_dayofmonth::s_singleton;
1846
Create_func_dayofmonth::create(THD *thd, Item *arg1)
1847
Create_func_dayofmonth::create(Session *session, Item *arg1)
1848
return new (thd->mem_root) Item_func_dayofmonth(arg1);
1849
return new (session->mem_root) Item_func_dayofmonth(arg1);
1852
1853
Create_func_dayofweek Create_func_dayofweek::s_singleton;
1855
Create_func_dayofweek::create(THD *thd, Item *arg1)
1856
Create_func_dayofweek::create(Session *session, Item *arg1)
1857
return new (thd->mem_root) Item_func_weekday(arg1, 1);
1858
return new (session->mem_root) Item_func_weekday(arg1, 1);
1861
1862
Create_func_dayofyear Create_func_dayofyear::s_singleton;
1864
Create_func_dayofyear::create(THD *thd, Item *arg1)
1865
Create_func_dayofyear::create(Session *session, Item *arg1)
1866
return new (thd->mem_root) Item_func_dayofyear(arg1);
1867
return new (session->mem_root) Item_func_dayofyear(arg1);
1870
1871
Create_func_degrees Create_func_degrees::s_singleton;
1873
Create_func_degrees::create(THD *thd, Item *arg1)
1874
Create_func_degrees::create(Session *session, Item *arg1)
1875
return new (thd->mem_root) Item_func_units((char*) "degrees", arg1,
1876
return new (session->mem_root) Item_func_units((char*) "degrees", arg1,
1876
1877
180/M_PI, 0.0);
1980
return new (thd->mem_root) Item_func_field(*item_list);
1981
return new (session->mem_root) Item_func_field(*item_list);
1984
1985
Create_func_find_in_set Create_func_find_in_set::s_singleton;
1987
Create_func_find_in_set::create(THD *thd, Item *arg1, Item *arg2)
1988
Create_func_find_in_set::create(Session *session, Item *arg1, Item *arg2)
1989
return new (thd->mem_root) Item_func_find_in_set(arg1, arg2);
1990
return new (session->mem_root) Item_func_find_in_set(arg1, arg2);
1993
1994
Create_func_floor Create_func_floor::s_singleton;
1996
Create_func_floor::create(THD *thd, Item *arg1)
1997
Create_func_floor::create(Session *session, Item *arg1)
1998
return new (thd->mem_root) Item_func_floor(arg1);
1999
return new (session->mem_root) Item_func_floor(arg1);
2002
2003
Create_func_format Create_func_format::s_singleton;
2005
Create_func_format::create(THD *thd, Item *arg1, Item *arg2)
2006
Create_func_format::create(Session *session, Item *arg1, Item *arg2)
2007
return new (thd->mem_root) Item_func_format(arg1, arg2);
2008
return new (session->mem_root) Item_func_format(arg1, arg2);
2011
2012
Create_func_found_rows Create_func_found_rows::s_singleton;
2014
Create_func_found_rows::create(THD *thd)
2015
Create_func_found_rows::create(Session *session)
2016
thd->lex->set_stmt_unsafe();
2017
return new (thd->mem_root) Item_func_found_rows();
2017
session->lex->set_stmt_unsafe();
2018
return new (session->mem_root) Item_func_found_rows();
2021
2022
Create_func_from_days Create_func_from_days::s_singleton;
2024
Create_func_from_days::create(THD *thd, Item *arg1)
2025
Create_func_from_days::create(Session *session, Item *arg1)
2026
return new (thd->mem_root) Item_func_from_days(arg1);
2027
return new (session->mem_root) Item_func_from_days(arg1);
2030
2031
Create_func_from_unixtime Create_func_from_unixtime::s_singleton;
2033
Create_func_from_unixtime::create_native(THD *thd, LEX_STRING name,
2034
Create_func_from_unixtime::create_native(Session *session, LEX_STRING name,
2034
2035
List<Item> *item_list)
2036
2037
Item *func= NULL;
2085
return new (thd->mem_root) Item_func_max(*item_list);
2086
return new (session->mem_root) Item_func_max(*item_list);
2089
2090
Create_func_hex Create_func_hex::s_singleton;
2092
Create_func_hex::create(THD *thd, Item *arg1)
2093
Create_func_hex::create(Session *session, Item *arg1)
2094
return new (thd->mem_root) Item_func_hex(arg1);
2095
return new (session->mem_root) Item_func_hex(arg1);
2098
2099
Create_func_ifnull Create_func_ifnull::s_singleton;
2101
Create_func_ifnull::create(THD *thd, Item *arg1, Item *arg2)
2102
Create_func_ifnull::create(Session *session, Item *arg1, Item *arg2)
2103
return new (thd->mem_root) Item_func_ifnull(arg1, arg2);
2104
return new (session->mem_root) Item_func_ifnull(arg1, arg2);
2107
2108
Create_func_instr Create_func_instr::s_singleton;
2110
Create_func_instr::create(THD *thd, Item *arg1, Item *arg2)
2111
Create_func_instr::create(Session *session, Item *arg1, Item *arg2)
2112
return new (thd->mem_root) Item_func_locate(arg1, arg2);
2113
return new (session->mem_root) Item_func_locate(arg1, arg2);
2116
2117
Create_func_isnull Create_func_isnull::s_singleton;
2119
Create_func_isnull::create(THD *thd, Item *arg1)
2120
Create_func_isnull::create(Session *session, Item *arg1)
2121
return new (thd->mem_root) Item_func_isnull(arg1);
2122
return new (session->mem_root) Item_func_isnull(arg1);
2125
2126
Create_func_last_day Create_func_last_day::s_singleton;
2128
Create_func_last_day::create(THD *thd, Item *arg1)
2129
Create_func_last_day::create(Session *session, Item *arg1)
2130
return new (thd->mem_root) Item_func_last_day(arg1);
2131
return new (session->mem_root) Item_func_last_day(arg1);
2134
2135
Create_func_last_insert_id Create_func_last_insert_id::s_singleton;
2137
Create_func_last_insert_id::create_native(THD *thd, LEX_STRING name,
2138
Create_func_last_insert_id::create_native(Session *session, LEX_STRING name,
2138
2139
List<Item> *item_list)
2140
2141
Item *func= NULL;
2304
2305
Create_func_log10 Create_func_log10::s_singleton;
2307
Create_func_log10::create(THD *thd, Item *arg1)
2308
Create_func_log10::create(Session *session, Item *arg1)
2309
return new (thd->mem_root) Item_func_log10(arg1);
2310
return new (session->mem_root) Item_func_log10(arg1);
2313
2314
Create_func_log2 Create_func_log2::s_singleton;
2316
Create_func_log2::create(THD *thd, Item *arg1)
2317
Create_func_log2::create(Session *session, Item *arg1)
2318
return new (thd->mem_root) Item_func_log2(arg1);
2319
return new (session->mem_root) Item_func_log2(arg1);
2322
2323
Create_func_lpad Create_func_lpad::s_singleton;
2325
Create_func_lpad::create(THD *thd, Item *arg1, Item *arg2, Item *arg3)
2326
Create_func_lpad::create(Session *session, Item *arg1, Item *arg2, Item *arg3)
2327
return new (thd->mem_root) Item_func_lpad(arg1, arg2, arg3);
2328
return new (session->mem_root) Item_func_lpad(arg1, arg2, arg3);
2331
2332
Create_func_ltrim Create_func_ltrim::s_singleton;
2334
Create_func_ltrim::create(THD *thd, Item *arg1)
2335
Create_func_ltrim::create(Session *session, Item *arg1)
2336
return new (thd->mem_root) Item_func_ltrim(arg1);
2337
return new (session->mem_root) Item_func_ltrim(arg1);
2340
2341
Create_func_makedate Create_func_makedate::s_singleton;
2343
Create_func_makedate::create(THD *thd, Item *arg1, Item *arg2)
2344
Create_func_makedate::create(Session *session, Item *arg1, Item *arg2)
2345
return new (thd->mem_root) Item_func_makedate(arg1, arg2);
2346
return new (session->mem_root) Item_func_makedate(arg1, arg2);
2349
2350
Create_func_maketime Create_func_maketime::s_singleton;
2352
Create_func_maketime::create(THD *thd, Item *arg1, Item *arg2, Item *arg3)
2353
Create_func_maketime::create(Session *session, Item *arg1, Item *arg2, Item *arg3)
2354
return new (thd->mem_root) Item_func_maketime(arg1, arg2, arg3);
2355
return new (session->mem_root) Item_func_maketime(arg1, arg2, arg3);
2358
2359
Create_func_make_set Create_func_make_set::s_singleton;
2361
Create_func_make_set::create_native(THD *thd, LEX_STRING name,
2362
Create_func_make_set::create_native(Session *session, LEX_STRING name,
2362
2363
List<Item> *item_list)
2364
2365
int arg_count= 0;
2420
2421
Create_func_monthname Create_func_monthname::s_singleton;
2423
Create_func_monthname::create(THD *thd, Item *arg1)
2424
Create_func_monthname::create(Session *session, Item *arg1)
2425
return new (thd->mem_root) Item_func_monthname(arg1);
2426
return new (session->mem_root) Item_func_monthname(arg1);
2429
2430
Create_func_nullif Create_func_nullif::s_singleton;
2432
Create_func_nullif::create(THD *thd, Item *arg1, Item *arg2)
2433
Create_func_nullif::create(Session *session, Item *arg1, Item *arg2)
2434
return new (thd->mem_root) Item_func_nullif(arg1, arg2);
2435
return new (session->mem_root) Item_func_nullif(arg1, arg2);
2438
2439
Create_func_oct Create_func_oct::s_singleton;
2441
Create_func_oct::create(THD *thd, Item *arg1)
2442
Create_func_oct::create(Session *session, Item *arg1)
2443
Item *i10= new (thd->mem_root) Item_int((int32_t) 10,2);
2444
Item *i8= new (thd->mem_root) Item_int((int32_t) 8,1);
2445
return new (thd->mem_root) Item_func_conv(arg1, i10, i8);
2444
Item *i10= new (session->mem_root) Item_int((int32_t) 10,2);
2445
Item *i8= new (session->mem_root) Item_int((int32_t) 8,1);
2446
return new (session->mem_root) Item_func_conv(arg1, i10, i8);
2449
2450
Create_func_ord Create_func_ord::s_singleton;
2452
Create_func_ord::create(THD *thd, Item *arg1)
2453
Create_func_ord::create(Session *session, Item *arg1)
2454
return new (thd->mem_root) Item_func_ord(arg1);
2455
return new (session->mem_root) Item_func_ord(arg1);
2458
2459
Create_func_period_add Create_func_period_add::s_singleton;
2461
Create_func_period_add::create(THD *thd, Item *arg1, Item *arg2)
2462
Create_func_period_add::create(Session *session, Item *arg1, Item *arg2)
2463
return new (thd->mem_root) Item_func_period_add(arg1, arg2);
2464
return new (session->mem_root) Item_func_period_add(arg1, arg2);
2467
2468
Create_func_period_diff Create_func_period_diff::s_singleton;
2470
Create_func_period_diff::create(THD *thd, Item *arg1, Item *arg2)
2471
Create_func_period_diff::create(Session *session, Item *arg1, Item *arg2)
2472
return new (thd->mem_root) Item_func_period_diff(arg1, arg2);
2473
return new (session->mem_root) Item_func_period_diff(arg1, arg2);
2476
2477
Create_func_pi Create_func_pi::s_singleton;
2479
Create_func_pi::create(THD *thd)
2480
Create_func_pi::create(Session *session)
2481
return new (thd->mem_root) Item_static_float_func("pi()", M_PI, 6, 8);
2482
return new (session->mem_root) Item_static_float_func("pi()", M_PI, 6, 8);
2485
2486
Create_func_pow Create_func_pow::s_singleton;
2488
Create_func_pow::create(THD *thd, Item *arg1, Item *arg2)
2489
Create_func_pow::create(Session *session, Item *arg1, Item *arg2)
2490
return new (thd->mem_root) Item_func_pow(arg1, arg2);
2491
return new (session->mem_root) Item_func_pow(arg1, arg2);
2494
2495
Create_func_quote Create_func_quote::s_singleton;
2497
Create_func_quote::create(THD *thd, Item *arg1)
2498
Create_func_quote::create(Session *session, Item *arg1)
2499
return new (thd->mem_root) Item_func_quote(arg1);
2500
return new (session->mem_root) Item_func_quote(arg1);
2503
2504
Create_func_radians Create_func_radians::s_singleton;
2506
Create_func_radians::create(THD *thd, Item *arg1)
2507
Create_func_radians::create(Session *session, Item *arg1)
2508
return new (thd->mem_root) Item_func_units((char*) "radians", arg1,
2509
return new (session->mem_root) Item_func_units((char*) "radians", arg1,
2509
2510
M_PI/180, 0.0);
2586
2587
Create_func_row_count Create_func_row_count::s_singleton;
2589
Create_func_row_count::create(THD *thd)
2590
Create_func_row_count::create(Session *session)
2591
thd->lex->set_stmt_unsafe();
2592
return new (thd->mem_root) Item_func_row_count();
2592
session->lex->set_stmt_unsafe();
2593
return new (session->mem_root) Item_func_row_count();
2596
2597
Create_func_rpad Create_func_rpad::s_singleton;
2599
Create_func_rpad::create(THD *thd, Item *arg1, Item *arg2, Item *arg3)
2600
Create_func_rpad::create(Session *session, Item *arg1, Item *arg2, Item *arg3)
2601
return new (thd->mem_root) Item_func_rpad(arg1, arg2, arg3);
2602
return new (session->mem_root) Item_func_rpad(arg1, arg2, arg3);
2605
2606
Create_func_rtrim Create_func_rtrim::s_singleton;
2608
Create_func_rtrim::create(THD *thd, Item *arg1)
2609
Create_func_rtrim::create(Session *session, Item *arg1)
2610
return new (thd->mem_root) Item_func_rtrim(arg1);
2611
return new (session->mem_root) Item_func_rtrim(arg1);
2614
2615
Create_func_sec_to_time Create_func_sec_to_time::s_singleton;
2617
Create_func_sec_to_time::create(THD *thd, Item *arg1)
2618
Create_func_sec_to_time::create(Session *session, Item *arg1)
2619
return new (thd->mem_root) Item_func_sec_to_time(arg1);
2620
return new (session->mem_root) Item_func_sec_to_time(arg1);
2623
2624
Create_func_sign Create_func_sign::s_singleton;
2626
Create_func_sign::create(THD *thd, Item *arg1)
2627
Create_func_sign::create(Session *session, Item *arg1)
2628
return new (thd->mem_root) Item_func_sign(arg1);
2629
return new (session->mem_root) Item_func_sign(arg1);
2632
2633
Create_func_sin Create_func_sin::s_singleton;
2635
Create_func_sin::create(THD *thd, Item *arg1)
2636
Create_func_sin::create(Session *session, Item *arg1)
2637
return new (thd->mem_root) Item_func_sin(arg1);
2638
return new (session->mem_root) Item_func_sin(arg1);
2641
2642
Create_func_space Create_func_space::s_singleton;
2644
Create_func_space::create(THD *thd, Item *arg1)
2645
Create_func_space::create(Session *session, Item *arg1)
2647
2648
TODO: Fix Bug#23637
2648
2649
The parsed item tree should not depend on
2649
<code>thd->variables.collation_connection</code>.
2650
<code>session->variables.collation_connection</code>.
2651
const CHARSET_INFO * const cs= thd->variables.collation_connection;
2652
const CHARSET_INFO * const cs= session->variables.collation_connection;
2654
2655
if (cs->mbminlen > 1)
2656
2657
uint32_t dummy_errors;
2657
sp= new (thd->mem_root) Item_string("", 0, cs, DERIVATION_COERCIBLE, MY_REPERTOIRE_ASCII);
2658
sp= new (session->mem_root) Item_string("", 0, cs, DERIVATION_COERCIBLE, MY_REPERTOIRE_ASCII);
2658
2659
sp->str_value.copy(" ", 1, &my_charset_utf8_general_ci, cs, &dummy_errors);
2662
sp= new (thd->mem_root) Item_string(" ", 1, cs, DERIVATION_COERCIBLE, MY_REPERTOIRE_ASCII);
2663
sp= new (session->mem_root) Item_string(" ", 1, cs, DERIVATION_COERCIBLE, MY_REPERTOIRE_ASCII);
2665
return new (thd->mem_root) Item_func_repeat(sp, arg1);
2666
return new (session->mem_root) Item_func_repeat(sp, arg1);
2669
2670
Create_func_sqrt Create_func_sqrt::s_singleton;
2672
Create_func_sqrt::create(THD *thd, Item *arg1)
2673
Create_func_sqrt::create(Session *session, Item *arg1)
2674
return new (thd->mem_root) Item_func_sqrt(arg1);
2675
return new (session->mem_root) Item_func_sqrt(arg1);
2678
2679
Create_func_str_to_date Create_func_str_to_date::s_singleton;
2681
Create_func_str_to_date::create(THD *thd, Item *arg1, Item *arg2)
2682
Create_func_str_to_date::create(Session *session, Item *arg1, Item *arg2)
2683
return new (thd->mem_root) Item_func_str_to_date(arg1, arg2);
2684
return new (session->mem_root) Item_func_str_to_date(arg1, arg2);
2687
2688
Create_func_strcmp Create_func_strcmp::s_singleton;
2690
Create_func_strcmp::create(THD *thd, Item *arg1, Item *arg2)
2691
Create_func_strcmp::create(Session *session, Item *arg1, Item *arg2)
2692
return new (thd->mem_root) Item_func_strcmp(arg1, arg2);
2693
return new (session->mem_root) Item_func_strcmp(arg1, arg2);
2696
2697
Create_func_substr_index Create_func_substr_index::s_singleton;
2699
Create_func_substr_index::create(THD *thd, Item *arg1, Item *arg2, Item *arg3)
2700
Create_func_substr_index::create(Session *session, Item *arg1, Item *arg2, Item *arg3)
2701
return new (thd->mem_root) Item_func_substr_index(arg1, arg2, arg3);
2702
return new (session->mem_root) Item_func_substr_index(arg1, arg2, arg3);
2705
2706
Create_func_subtime Create_func_subtime::s_singleton;
2708
Create_func_subtime::create(THD *thd, Item *arg1, Item *arg2)
2709
Create_func_subtime::create(Session *session, Item *arg1, Item *arg2)
2710
return new (thd->mem_root) Item_func_add_time(arg1, arg2, 0, 1);
2711
return new (session->mem_root) Item_func_add_time(arg1, arg2, 0, 1);
2714
2715
Create_func_tan Create_func_tan::s_singleton;
2717
Create_func_tan::create(THD *thd, Item *arg1)
2718
Create_func_tan::create(Session *session, Item *arg1)
2719
return new (thd->mem_root) Item_func_tan(arg1);
2720
return new (session->mem_root) Item_func_tan(arg1);
2723
2724
Create_func_time_format Create_func_time_format::s_singleton;
2726
Create_func_time_format::create(THD *thd, Item *arg1, Item *arg2)
2727
Create_func_time_format::create(Session *session, Item *arg1, Item *arg2)
2728
return new (thd->mem_root) Item_func_date_format(arg1, arg2, 1);
2729
return new (session->mem_root) Item_func_date_format(arg1, arg2, 1);
2732
2733
Create_func_time_to_sec Create_func_time_to_sec::s_singleton;
2735
Create_func_time_to_sec::create(THD *thd, Item *arg1)
2736
Create_func_time_to_sec::create(Session *session, Item *arg1)
2737
return new (thd->mem_root) Item_func_time_to_sec(arg1);
2738
return new (session->mem_root) Item_func_time_to_sec(arg1);
2741
2742
Create_func_timediff Create_func_timediff::s_singleton;
2744
Create_func_timediff::create(THD *thd, Item *arg1, Item *arg2)
2745
Create_func_timediff::create(Session *session, Item *arg1, Item *arg2)
2746
return new (thd->mem_root) Item_func_timediff(arg1, arg2);
2747
return new (session->mem_root) Item_func_timediff(arg1, arg2);
2750
2751
Create_func_to_days Create_func_to_days::s_singleton;
2753
Create_func_to_days::create(THD *thd, Item *arg1)
2754
Create_func_to_days::create(Session *session, Item *arg1)
2755
return new (thd->mem_root) Item_func_to_days(arg1);
2756
return new (session->mem_root) Item_func_to_days(arg1);
2759
2760
Create_func_ucase Create_func_ucase::s_singleton;
2762
Create_func_ucase::create(THD *thd, Item *arg1)
2763
Create_func_ucase::create(Session *session, Item *arg1)
2764
return new (thd->mem_root) Item_func_ucase(arg1);
2765
return new (session->mem_root) Item_func_ucase(arg1);
2768
2769
Create_func_unhex Create_func_unhex::s_singleton;
2771
Create_func_unhex::create(THD *thd, Item *arg1)
2772
Create_func_unhex::create(Session *session, Item *arg1)
2773
return new (thd->mem_root) Item_func_unhex(arg1);
2774
return new (session->mem_root) Item_func_unhex(arg1);
2777
2778
Create_func_unix_timestamp Create_func_unix_timestamp::s_singleton;
2780
Create_func_unix_timestamp::create_native(THD *thd, LEX_STRING name,
2781
Create_func_unix_timestamp::create_native(Session *session, LEX_STRING name,
2781
2782
List<Item> *item_list)
2783
2784
Item *func= NULL;