~drizzle-trunk/drizzle/development

« back to all changes in this revision

Viewing changes to drizzled/item_func.h

code clean move Item_func_signed and Item_func_unsigned to functions directory

Show diffs side-by-side

added added

removed removed

Lines of Context:
37
37
#include <drizzled/functions/num_op.h>
38
38
#include <drizzled/functions/num1.h>
39
39
#include <drizzled/functions/real.h>
40
 
 
41
 
 
42
 
class Item_func_signed :public Item_int_func
43
 
{
44
 
public:
45
 
  Item_func_signed(Item *a) :Item_int_func(a) {}
46
 
  const char *func_name() const { return "cast_as_signed"; }
47
 
  int64_t val_int();
48
 
  int64_t val_int_from_str(int *error);
49
 
  void fix_length_and_dec()
50
 
  { max_length=args[0]->max_length; unsigned_flag=0; }
51
 
  virtual void print(String *str, enum_query_type query_type);
52
 
  uint32_t decimal_precision() const { return args[0]->decimal_precision(); }
53
 
};
54
 
 
55
 
 
56
 
class Item_func_unsigned :public Item_func_signed
57
 
{
58
 
public:
59
 
  Item_func_unsigned(Item *a) :Item_func_signed(a) {}
60
 
  const char *func_name() const { return "cast_as_unsigned"; }
61
 
  void fix_length_and_dec()
62
 
  { max_length=args[0]->max_length; unsigned_flag=1; }
63
 
  int64_t val_int();
64
 
  virtual void print(String *str, enum_query_type query_type);
65
 
};
66
 
 
 
40
#include <drizzled/functions/signed.h>
 
41
#include <drizzled/functions/unsigned.h>
67
42
 
68
43
class Item_decimal_typecast :public Item_func
69
44
{