~drizzle-trunk/drizzle/development

« back to all changes in this revision

Viewing changes to drizzled/function/user_var_as_out_param.h

  • Committer: Mark Atwood
  • Date: 2011-10-19 00:10:47 UTC
  • mfrom: (2440.2.13 rf)
  • Revision ID: me@mark.atwood.name-20111019001047-atj0u8gedphon1tb
mergeĀ lp:~olafvdspek/drizzle/refactor5

Show diffs side-by-side

added added

removed removed

Lines of Context:
21
21
 
22
22
#include <drizzled/function/func.h>
23
23
 
24
 
namespace drizzled
25
 
{
 
24
namespace drizzled {
26
25
 
27
26
/*
28
27
  This item represents user variable used as out parameter (e.g in LOAD DATA),
33
32
  in List<Item> and desire to place this code somewhere near other functions
34
33
  working with user variables.
35
34
*/
36
 
class Item_user_var_as_out_param :public Item
 
35
class Item_user_var_as_out_param : public Item
37
36
{
38
 
  lex_string_t name;
 
37
  str_ref name;
39
38
  user_var_entry *entry;
40
39
public:
41
 
  Item_user_var_as_out_param(lex_string_t a) : name(a) {}
 
40
  Item_user_var_as_out_param(str_ref a) : name(a) {}
42
41
  /* We should return something different from FIELD_ITEM here */
43
 
  enum Type type() const { return STRING_ITEM;}
 
42
  Type type() const { return STRING_ITEM;}
44
43
  double val_real();
45
44
  int64_t val_int();
46
 
  String *val_str(String *str);
 
45
  String *val_str(String*);
47
46
  type::Decimal *val_decimal(type::Decimal *decimal_buffer);
48
47
  /* fix_fields() binds variable name with its entry structure */
49
 
  bool fix_fields(Session *session, Item **ref);
50
 
  virtual void print(String *str);
51
 
  void set_null_value(const charset_info_st * const cs);
52
 
  void set_value(const char *str, uint32_t length, const charset_info_st * const cs);
 
48
  bool fix_fields(Session*, Item **ref);
 
49
  virtual void print(String*);
 
50
  void set_null_value(const charset_info_st*);
 
51
  void set_value(str_ref, const charset_info_st*);
53
52
};
54
53
 
55
54
} /* namespace drizzled */
56