• Alexander Barkov's avatar
    MDEV-7950 Item_func::type() takes 0.26% in OLTP RO · c8141f53
    Alexander Barkov authored
    Step#2:
    
    1. Removes the function build_equal_items_for_cond() and
       introduces a new method Item::build_equal_items() instead,
       with specific implementations in the following Items:
    
       Item  (the default implementation)
       Item_ident_or_func_or_sum
       Item_cond
       Item_cond_and
    
    2. Adds a new abstract class Item_ident_or_func_or_sum,
       a common parent for Item_ident and Item_func_or_sum,
       as they have exactly the same build_equal_items().
    
    3. Renames Item_cond_and::cond_equal to Item_cond_and::m_cond_equal,
       to avoid confusion between the member and local variables named
       "cond_equal".
    c8141f53
item_cmpfunc.h 67.3 KB