| My Project
   
    | 
#include <item_sum.h>
 
  
 | Public Member Functions | |
| Aggregator_simple (Item_sum *sum) | |
| Aggregator_type | Aggrtype () | 
| bool | setup (THD *thd) | 
| void | clear () | 
| bool | add () | 
| void | endup () | 
| virtual my_decimal * | arg_val_decimal (my_decimal *value) | 
| virtual double | arg_val_real () | 
| virtual bool | arg_is_null (bool use_null_value) | 
The pass-through aggregator. Implements AGGFN (DISTINCT ..) by knowing it gets distinct data on input. So it just pumps them back to the Item_sum descendant class.
| bool Aggregator_simple::add | ( | ) |  [inline, virtual] | 
Called when there's a new value to be aggregated. Updates the internal state of the aggregator to reflect the new value.
Implements Aggregator.
| bool Aggregator_simple::arg_is_null | ( | bool | use_null_value | ) |  [virtual] | 
NULLness of being-aggregated argument.
| use_null_value | Optimization: to determine if the argument is NULL we must, in the general case, call is_null() on it, which itself might call val_*() on it, which might be costly. If you just have called arg_val*(), you can pass use_null_value=true; this way, arg_is_null() might avoid is_null() and instead do a cheap read of the Item's null_value (updated by arg_val*()). | 
Implements Aggregator.
| my_decimal * Aggregator_simple::arg_val_decimal | ( | my_decimal * | value | ) |  [virtual] | 
Decimal value of being-aggregated argument
Implements Aggregator.
| double Aggregator_simple::arg_val_real | ( | ) |  [virtual] | 
Floating point value of being-aggregated argument
Implements Aggregator.
| void Aggregator_simple::clear | ( | ) |  [inline, virtual] | 
Called when we need to wipe out all the data from the aggregator : all the values acumulated and all the state. Cleans up the internal structures and resets them to their initial state.
Implements Aggregator.
| void Aggregator_simple::endup | ( | ) |  [inline, virtual] | 
Called when there are no more data and the final value is to be retrieved. Finalises the state of the aggregator, so the final result can be retrieved.
Implements Aggregator.
| bool Aggregator_simple::setup | ( | THD * | ) |  [inline, virtual] | 
Called before adding the first row. Allocates and sets up the internal aggregation structures used, e.g. the Unique instance used to calculate distinct.
Implements Aggregator.
 1.7.6.1
 1.7.6.1