123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140 |
- #ifndef MYSQL_SERVICE_MYSQL_STRING_INCLUDED
- #define MYSQL_SERVICE_MYSQL_STRING_INCLUDED
- #ifndef MYSQL_ABI_CHECK
- #include <stdlib.h>
- #endif
- #ifdef __cplusplus
- extern "C" {
- #endif
- typedef void *mysql_string_iterator_handle;
- typedef void *mysql_string_handle;
- extern struct mysql_string_service_st {
- int (*mysql_string_convert_to_char_ptr_type)
- (mysql_string_handle, const char *, char *, unsigned int, int *);
- mysql_string_iterator_handle (*mysql_string_get_iterator_type)
- (mysql_string_handle);
- int (*mysql_string_iterator_next_type)(mysql_string_iterator_handle);
- int (*mysql_string_iterator_isupper_type)(mysql_string_iterator_handle);
- int (*mysql_string_iterator_islower_type)(mysql_string_iterator_handle);
- int (*mysql_string_iterator_isdigit_type)(mysql_string_iterator_handle);
- mysql_string_handle (*mysql_string_to_lowercase_type)(mysql_string_handle);
- void (*mysql_string_free_type)(mysql_string_handle);
- void (*mysql_string_iterator_free_type)(mysql_string_iterator_handle);
- } *mysql_string_service;
- #ifdef MYSQL_DYNAMIC_PLUGIN
- #define mysql_string_convert_to_char_ptr(string_handle, charset_name, \
- buffer, buffer_size, error) \
- mysql_string_service->mysql_string_convert_to_char_ptr_type \
- (string_handle, charset_name, buffer, \
- buffer_size, error)
- #define mysql_string_get_iterator(string_handle) \
- mysql_string_service->mysql_string_get_iterator_type(string_handle)
- #define mysql_string_iterator_next(iterator_handle) \
- mysql_string_service->mysql_string_iterator_next_type(iterator_handle)
- #define mysql_string_iterator_isupper(iterator_handle) \
- mysql_string_service->mysql_string_iterator_isupper_type \
- (iterator_handle)
- #define mysql_string_iterator_islower(iterator_handle) \
- mysql_string_service->mysql_string_iterator_islower_type \
- (iterator_handle)
- #define mysql_string_iterator_isdigit(iterator_handle) \
- mysql_string_service->mysql_string_iterator_isdigit_type \
- (iterator_handle)
- #define mysql_string_to_lowercase(string_handle) \
- mysql_string_service->mysql_string_to_lowercase_type(string_handle)
- #define mysql_string_free(mysql_string_handle) \
- mysql_string_service->mysql_string_free_type(mysql_string_handle)
- #define mysql_string_iterator_free(mysql_string_iterator_handle) \
- mysql_string_service->mysql_string_iterator_free_type \
- (mysql_string_iterator_handle)
- #else
- int mysql_string_convert_to_char_ptr(mysql_string_handle string_handle,
- const char *charset_name, char *buffer,
- unsigned int buffer_size, int *error);
- mysql_string_iterator_handle mysql_string_get_iterator(mysql_string_handle
- string_handle);
- int mysql_string_iterator_next(mysql_string_iterator_handle iterator_handle);
- int mysql_string_iterator_isupper(mysql_string_iterator_handle iterator_handle);
- int mysql_string_iterator_islower(mysql_string_iterator_handle iterator_handle);
- int mysql_string_iterator_isdigit(mysql_string_iterator_handle iterator_handle);
- mysql_string_handle mysql_string_to_lowercase(mysql_string_handle
- string_handle);
- void mysql_string_free(mysql_string_handle);
- void mysql_string_iterator_free(mysql_string_iterator_handle);
- #endif
- #ifdef __cplusplus
- }
- #endif
- #endif
|