00001
00002
00003
00004
00005
00006
00007
00008
00009
00010
00011 #ifndef __UREP_H
00012 #define __UREP_H
00013
00014 #include "unicode/utypes.h"
00015
00016 U_CDECL_BEGIN
00017
00018
00019
00020
00021
00022
00023
00024
00025
00026
00027
00028
00029
00030
00042 typedef void* UReplaceable;
00043
00051 typedef struct UReplaceableCallbacks {
00052
00061 int32_t (*length)(const UReplaceable* rep);
00062
00074 UChar (*charAt)(const UReplaceable* rep,
00075 int32_t offset);
00076
00087 UChar32 (*char32At)(const UReplaceable* rep,
00088 int32_t offset);
00089
00106 void (*replace)(UReplaceable* rep,
00107 int32_t start,
00108 int32_t limit,
00109 const UChar* text,
00110 int32_t textLength);
00111
00125 void (*extract)(UReplaceable* rep,
00126 int32_t start,
00127 int32_t limit,
00128 UChar* dst);
00129
00146 void (*copy)(UReplaceable* rep,
00147 int32_t start,
00148 int32_t limit,
00149 int32_t dest);
00150
00151 } UReplaceableCallbacks;
00152
00153 U_CDECL_END
00154
00155 #endif