~drizzle-trunk/drizzle/development

« back to all changes in this revision

Viewing changes to drizzled/lex_string.h

  • Committer: Mark Atwood
  • Date: 2011-08-01 05:22:14 UTC
  • mfrom: (1919.3.53 drizzle_pbms)
  • Revision ID: me@mark.atwood.name-20110801052214-3wdsx3xgld6b5v4f
mergeĀ lp:~barry-leslie/drizzle/drizzle_pbms

Show diffs side-by-side

added added

removed removed

Lines of Context:
21
21
 
22
22
#include <cstddef>
23
23
 
24
 
namespace drizzled {
 
24
namespace drizzled
 
25
{
25
26
 
26
27
/*
27
28
  lex_string_t -- a pair of a C-string and its length.
30
31
/* This definition must match the one given in mysql/plugin.h */
31
32
struct lex_string_t
32
33
{
33
 
  const char* begin() const
34
 
  {
35
 
    return str;
36
 
  }
37
 
 
38
 
  const char* end() const
39
 
  {
40
 
    return str + length;
41
 
  }
42
 
 
43
 
  char* str;
 
34
  char *str;
44
35
  size_t length;
45
36
};
46
37
 
50
41
  return tmp;
51
42
}
52
43
 
 
44
#define NULL_lex_string_t null_lex_string()
 
45
 
53
46
struct execute_string_t : public lex_string_t
54
47
{
55
48
private:
70
63
 
71
64
};
72
65
 
73
 
#define STRING_WITH_LEN(X) (X), (sizeof(X) - 1)
74
 
#define C_STRING_WITH_LEN(X) const_cast<char*>(X), (sizeof(X) - 1)
 
66
 
 
67
#define STRING_WITH_LEN(X) (X), (static_cast<size_t>((sizeof(X) - 1)))
 
68
#define C_STRING_WITH_LEN(X) (const_cast<char *>((X))), (static_cast<size_t>((sizeof(X) - 1)))
75
69
 
76
70
} /* namespace drizzled */
77
71