~drizzle-trunk/drizzle/development

« back to all changes in this revision

Viewing changes to mystrings/m_string.h

  • Committer: Mark Atwood
  • Date: 2008-10-16 11:33:16 UTC
  • mto: (520.1.13 drizzle)
  • mto: This revision was merged to the branch mainline in revision 530.
  • Revision ID: mark@fallenpegasus.com-20081016113316-ff6jdt31ck90sjdh
an implemention of the errmsg plugin

Show diffs side-by-side

added added

removed removed

Lines of Context:
81
81
extern  char *strxmov(char *dst,const char *src, ...);
82
82
extern  char *strxcpy(char *dst,const char *src, ...);
83
83
extern  char *strxncat(char *dst,size_t len, const char *src, ...);
 
84
extern  char *strxnmov(char *dst,size_t len, const char *src, ...);
84
85
extern  char *strxncpy(char *dst,size_t len, const char *src, ...);
85
86
 
86
87
/* Prototypes of normal stringfunctions (with may ours) */
144
145
extern char *int2str(int32_t val, char *dst, int radix, int upcase);
145
146
extern char *int10_to_str(int32_t val,char *dst,int radix);
146
147
extern char *str2int(const char *src,int radix,long lower,long upper,
147
 
                     long *val);
 
148
                         long *val);
148
149
int64_t my_strtoll10(const char *nptr, char **endptr, int *error);
149
150
extern char *int64_t2str(int64_t val,char *dst,int radix);
150
151
extern char *int64_t10_to_str(int64_t val,char *dst,int radix);
154
155
}
155
156
#endif
156
157
 
 
158
/*
 
159
  LEX_STRING -- a pair of a C-string and its length.
 
160
*/
 
161
 
 
162
#ifndef _my_plugin_h
 
163
/* This definition must match the one given in mysql/plugin.h */
 
164
struct st_mysql_lex_string
 
165
{
 
166
  char *str;
 
167
  size_t length;
 
168
};
 
169
#endif
 
170
typedef struct st_mysql_lex_string LEX_STRING;
 
171
 
 
172
#define STRING_WITH_LEN(X) (X), ((size_t) (sizeof(X) - 1))
 
173
#define USTRING_WITH_LEN(X) ((unsigned char*) X), ((size_t) (sizeof(X) - 1))
 
174
#define C_STRING_WITH_LEN(X) ((char *) (X)), ((size_t) (sizeof(X) - 1))
157
175
 
158
176
/**
159
177
  Skip trailing space.
164
182
*/
165
183
 
166
184
static inline const unsigned char *
167
 
skip_trailing_space(const unsigned char *ptr, size_t len)
 
185
skip_trailing_space(const unsigned char *ptr,size_t len)
168
186
{
169
187
  const unsigned char *end= ptr + len;
170
188