~drizzle-trunk/drizzle/development

« back to all changes in this revision

Viewing changes to drizzled/item/null.h

mergeĀ mainline

Show diffs side-by-side

added added

removed removed

Lines of Context:
20
20
#ifndef DRIZZLED_ITEM_NULL_H
21
21
#define DRIZZLED_ITEM_NULL_H
22
22
 
23
 
#include "drizzled/item/basic_constant.h"
24
 
 
25
 
namespace drizzled
26
 
{
27
 
 
28
23
class Item_null :public Item_basic_constant
29
24
{
30
25
public:
45
40
  my_decimal *val_decimal(my_decimal *);
46
41
  int save_in_field(Field *field, bool no_conversions);
47
42
  int save_safe_in_field(Field *field);
48
 
  bool send(plugin::Client *client, String *str);
 
43
  bool send(Protocol *protocol, String *str);
49
44
  enum Item_result result_type () const { return STRING_RESULT; }
50
45
  enum_field_types field_type() const   { return DRIZZLE_TYPE_NULL; }
51
46
  bool basic_const_item() const { return 1; }
55
50
  virtual void print(String *str, enum_query_type);
56
51
 
57
52
  Item *safe_charset_converter(const CHARSET_INFO * const tocs);
 
53
  bool check_vcol_func_processor(unsigned char *)
 
54
  { return false; }
58
55
};
59
56
 
60
57
class Item_null_result :public Item_null
67
64
  {
68
65
    save_in_field(result_field, no_conversions);
69
66
  }
 
67
  bool check_vcol_func_processor(unsigned char *)
 
68
  { return true; }
70
69
};
71
70
 
72
 
} /* namespace drizzled */
73
 
 
74
71
#endif /* DRIZZLED_ITEM_NULL_H */