~drizzle-trunk/drizzle/development

« back to all changes in this revision

Viewing changes to drizzled/charset.h

  • Committer: Olaf van der Spek
  • Date: 2011-10-24 13:51:13 UTC
  • mto: This revision was merged to the branch mainline in revision 2447.
  • Revision ID: olafvdspek@gmail.com-20111024135113-7wz4cjv432m4w0hn
Refactor

Show diffs side-by-side

added added

removed removed

Lines of Context:
217
217
  int64_t (*strntoll)(const charset_info_st*, const char *s, size_t l, int base, char **e, int *err);
218
218
  uint64_t (*strntoull)(const charset_info_st*, const char *s, size_t l, int base, char **e, int *err);
219
219
  double (*strntod)(const charset_info_st*, char *s, size_t l, char **e, int *err);
220
 
  int64_t (*strtoll10)(const charset_info_st *cs, const char *nptr, char **endptr, int *error);
221
 
  uint64_t (*strntoull10rnd)(const charset_info_st *cs, const char *str, size_t length, int unsigned_fl, char **endptr, int *error);
 
220
  int64_t (*strtoll10)(const charset_info_st*, const char *nptr, char **endptr, int *error);
 
221
  uint64_t (*strntoull10rnd)(const charset_info_st*, const char *str, size_t length, int unsigned_fl, char **endptr, int *error);
222
222
  size_t (*scan)(const charset_info_st*, const char *b, const char *e, int sq);
223
223
};
224
224
 
346
346
};
347
347
 
348
348
extern DRIZZLED_API charset_info_st *all_charsets[256];
349
 
extern charset_info_st compiled_charsets[];
350
 
extern uint32_t get_charset_number(const char *cs_name, uint32_t cs_flags);
351
 
extern uint32_t get_collation_number(const char *name);
352
 
extern const char *get_charset_name(uint32_t cs_number);
353
 
extern bool resolve_charset(const char *cs_name, const charset_info_st *default_cs, const charset_info_st **cs);
354
 
extern bool resolve_collation(const char *cl_name, const charset_info_st *default_cl, const charset_info_st **cl);
355
 
extern void free_charsets();
356
 
extern char *get_charsets_dir(char *buf);
357
 
extern bool my_charset_same(const charset_info_st *cs1, const charset_info_st *cs2);
358
 
extern size_t escape_string_for_drizzle(const charset_info_st *charset_info, char *to, size_t to_length, const char *from, size_t length);
359
 
extern size_t escape_quotes_for_drizzle(const charset_info_st *charset_info, char *to, size_t to_length, const char *from, size_t length);
 
349
uint32_t get_charset_number(const char *cs_name, uint32_t cs_flags);
 
350
uint32_t get_collation_number(const char *name);
 
351
const char *get_charset_name(uint32_t cs_number);
 
352
void free_charsets();
 
353
bool my_charset_same(const charset_info_st*, const charset_info_st*);
 
354
size_t escape_string_for_drizzle(const charset_info_st *charset_info, char *to, size_t to_length, const char *from, size_t length);
 
355
size_t escape_quotes_for_drizzle(const charset_info_st *charset_info, char *to, size_t to_length, const char *from, size_t length);
360
356
extern DRIZZLED_API const charset_info_st *default_charset_info;
361
357
extern DRIZZLED_API const charset_info_st *system_charset_info;
362
358
extern const charset_info_st *files_charset_info;
369
365
extern DRIZZLED_API charset_info_st my_charset_utf8mb4_general_ci;
370
366
extern DRIZZLED_API charset_info_st my_charset_utf8mb4_unicode_ci;
371
367
size_t my_strnxfrmlen_simple(const charset_info_st*, size_t);
372
 
extern int my_strnncollsp_simple(const charset_info_st*, const unsigned char*, size_t, const unsigned char*, size_t, bool diff_if_only_endspace_difference);
373
 
extern size_t my_lengthsp_8bit(const charset_info_st*, const char *ptr, size_t length);
374
 
extern uint32_t my_instr_simple(const charset_info_st*, const char *b, size_t b_length, const char *s, size_t s_length, my_match_t *match, uint32_t nmatch);
375
 
extern MY_CHARSET_HANDLER my_charset_8bit_handler;
376
 
extern int my_strcasecmp_mb(const charset_info_st*  cs, const char *s, const char *t);
377
 
extern bool my_parse_charset_xml(const char *bug, size_t len, int (*add)(charset_info_st *cs));
 
368
int my_strnncollsp_simple(const charset_info_st*, const unsigned char*, size_t, const unsigned char*, size_t, bool diff_if_only_endspace_difference);
 
369
size_t my_lengthsp_8bit(const charset_info_st*, const char *ptr, size_t length);
 
370
uint32_t my_instr_simple(const charset_info_st*, const char *b, size_t b_length, const char *s, size_t s_length, my_match_t *match, uint32_t nmatch);
 
371
int my_strcasecmp_mb(const charset_info_st*, const char *s, const char *t);
378
372
 
379
373
DRIZZLED_API const charset_info_st *get_charset(uint32_t cs_number);
380
374
DRIZZLED_API const charset_info_st *get_charset_by_name(const char *cs_name);
381
375
DRIZZLED_API const charset_info_st *get_charset_by_csname(const char *cs_name, uint32_t cs_flags);
382
376
 
383
377
/* Functions for 8bit */
384
 
int my_mb_ctype_8bit(const charset_info_st*,int *, const unsigned char*,const unsigned char *);
385
 
int my_mb_ctype_mb(const charset_info_st*,int *, const unsigned char*,const unsigned char *);
 
378
int my_mb_ctype_8bit(const charset_info_st*, int*, const unsigned char*, const unsigned char *);
 
379
int my_mb_ctype_mb(const charset_info_st*, int*, const unsigned char*, const unsigned char *);
386
380
 
387
381
size_t my_scan_8bit(const charset_info_st*, const char *b, const char *e, int sq);
388
382
size_t my_snprintf_8bit(const charset_info_st*, char *to, size_t n, const char *fmt, ...) __attribute__((format(printf, 4, 5)));
507
501
    - 0 is the strings are equal
508
502
*/
509
503
int my_wc_mb_filename(const charset_info_st*, my_wc_t wc, unsigned char *s, unsigned char *e);
510
 
 
511
504
int my_mb_wc_filename(const charset_info_st*, my_wc_t *pwc, const unsigned char *s, const unsigned char *e);
512
505
 
513
 
int my_strnncoll_any_uca(const charset_info_st*,
514
 
                         const unsigned char *s, size_t slen,
515
 
                         const unsigned char *t, size_t tlen,
516
 
                         bool t_is_prefix);
517
 
 
518
 
int my_strnncollsp_any_uca(const charset_info_st*,
519
 
                           const unsigned char *s, size_t slen,
520
 
                           const unsigned char *t, size_t tlen,
521
 
                           bool diff_if_only_endspace_difference);
522
 
 
523
 
void my_hash_sort_any_uca(const charset_info_st*,
524
 
                          const unsigned char *s, size_t slen,
525
 
                          uint32_t *n1, uint32_t *n2);
526
 
 
527
 
size_t my_strnxfrm_any_uca(const charset_info_st*,
528
 
                           unsigned char *dst, size_t dstlen, uint32_t nweights,
529
 
                           const unsigned char *src, size_t srclen,
530
 
                           uint32_t flags);
531
 
 
532
 
int my_wildcmp_uca(const charset_info_st*,
533
 
                   const char *str,const char *str_end,
534
 
                   const char *wildstr,const char *wildend,
535
 
                   int escape, int w_one, int w_many);
536
 
 
537
506
int my_strnncoll_8bit_bin(const charset_info_st*,
538
507
                          const unsigned char *s, size_t slen,
539
508
                          const unsigned char *t, size_t tlen,