Main Page | Class Hierarchy | Alphabetical List | Data Structures | File List | Data Fields | Globals | Related Pages

urep.h

00001 /*
00002 ******************************************************************************
00003 *   Copyright (C) 1997-2003, International Business Machines
00004 *   Corporation and others.  All Rights Reserved.
00005 ******************************************************************************
00006 *   Date        Name        Description
00007 *   06/23/00    aliu        Creation.
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  * General Notes
00020  ********************************************************************
00021  * TODO
00022  * Add usage scenario
00023  * Add test code
00024  * Talk about pinning
00025  * Talk about "can truncate result if out of memory"
00026  */
00027 
00028 /********************************************************************
00029  * Data Structures
00030  ********************************************************************/
00031 
00039 typedef void* UReplaceable;
00040 
00048 typedef struct UReplaceableCallbacks {
00049 
00058     int32_t (*length)(const UReplaceable* rep);
00059 
00071     UChar   (*charAt)(const UReplaceable* rep,
00072                       int32_t offset);
00073 
00084     UChar32 (*char32At)(const UReplaceable* rep,
00085                         int32_t offset);
00086     
00103     void    (*replace)(UReplaceable* rep,
00104                        int32_t start,
00105                        int32_t limit,
00106                        const UChar* text,
00107                        int32_t textLength);
00108     
00122     void    (*extract)(UReplaceable* rep,
00123                        int32_t start,
00124                        int32_t limit,
00125                        UChar* dst);
00126 
00143     void    (*copy)(UReplaceable* rep,
00144                     int32_t start,
00145                     int32_t limit,
00146                     int32_t dest);    
00147 
00148 } UReplaceableCallbacks;
00149 
00150 U_CDECL_END
00151 
00152 #endif

Generated on Wed Sep 3 17:47:10 2003 for ICU 2.6 by doxygen 1.3.2