22 #include <drizzled/function/math/neg.h>
37 int64_t value= args[0]->
val_int();
49 class_decimal2decimal(value, decimal_value);
50 class_decimal_neg(decimal_value);
57 void Item_func_neg::fix_num_length_and_dec()
59 decimals= args[0]->decimals;
61 max_length= args[0]->max_length + 1;
65 void Item_func_neg::fix_length_and_dec()
67 Item_func_num1::fix_length_and_dec();
75 if (hybrid_type == INT_RESULT && args[0]->
const_item())
77 int64_t val= args[0]->
val_int();
78 if ((uint64_t) val >= (uint64_t) INT64_MIN &&
79 ((uint64_t) val != (uint64_t) INT64_MIN ||
80 args[0]->type() != INT_ITEM))
86 hybrid_type= DECIMAL_RESULT;