<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN"> <html><head><meta http-equiv="Content-Type" content="text/html;charset=iso-8859-1"> <title>ICU 3.8: UReplaceableCallbacks Struct Reference</title> <link href="doxygen.css" rel="stylesheet" type="text/css"> <link href="tabs.css" rel="stylesheet" type="text/css"> </head><body> <!-- Generated by Doxygen 1.5.1 --> <div class="tabs"> <ul> <li><a href="index.html"><span>Main Page</span></a></li> <li><a href="modules.html"><span>Modules</span></a></li> <li id="current"><a href="classes.html"><span>Data Structures</span></a></li> <li><a href="files.html"><span>Files</span></a></li> <li><a href="pages.html"><span>Related Pages</span></a></li> <li> <form action="search.php" method="get"> <table cellspacing="0" cellpadding="0" border="0"> <tr> <td><label> <u>S</u>earch for </label></td> <td><input type="text" name="query" value="" size="20" accesskey="s"/></td> </tr> </table> </form> </li> </ul></div> <div class="tabs"> <ul> <li><a href="classes.html"><span>Alphabetical List</span></a></li> <li><a href="annotated.html"><span>Data Structures</span></a></li> <li><a href="hierarchy.html"><span>Class Hierarchy</span></a></li> <li><a href="functions.html"><span>Data Fields</span></a></li> </ul></div> <h1>UReplaceableCallbacks Struct Reference</h1><!-- doxytag: class="UReplaceableCallbacks" -->A set of function pointers that transliterators use to manipulate a UReplaceable. <a href="#_details">More...</a> <p> <code>#include <<a class="el" href="urep_8h-source.html">urep.h</a>></code> <p> <table border="0" cellpadding="0" cellspacing="0"> <tr><td></td></tr> <tr><td colspan="2"><br><h2>Data Fields</h2></td></tr> <tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="el" href="pwin32_8h.html#b1967d8591af1a4e48c37fd2b0f184d0">int32_t</a>(* </td><td class="memItemRight" valign="bottom"><a class="el" href="structUReplaceableCallbacks.html#be20b175db7fe49c652d32b0047bd44d">length</a> )(const <a class="el" href="urep_8h.html#22b35ca6677ac47c2f5b0d01ffbead60">UReplaceable</a> *rep)</td></tr> <tr><td class="mdescLeft"> </td><td class="mdescRight">Function pointer that returns the number of UChar code units in this text. <a href="#be20b175db7fe49c652d32b0047bd44d"></a><br></td></tr> <tr><td class="memItemLeft" nowrap align="right" valign="top">UChar(* </td><td class="memItemRight" valign="bottom"><a class="el" href="structUReplaceableCallbacks.html#dd37b2389b812250b661fe51fe193941">charAt</a> )(const <a class="el" href="urep_8h.html#22b35ca6677ac47c2f5b0d01ffbead60">UReplaceable</a> *rep, <a class="el" href="pwin32_8h.html#b1967d8591af1a4e48c37fd2b0f184d0">int32_t</a> offset)</td></tr> <tr><td class="mdescLeft"> </td><td class="mdescRight">Function pointer that returns a UChar code units at the given offset into this text; 0 <= offset < n, where n is the value returned by (*length)(rep). <a href="#dd37b2389b812250b661fe51fe193941"></a><br></td></tr> <tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="el" href="umachine_8h.html#09fff5c3b5a5b015324dc3ec3cf92809">UChar32</a>(* </td><td class="memItemRight" valign="bottom"><a class="el" href="structUReplaceableCallbacks.html#6eb341066f05c7799cd13f6b0f1c56e7">char32At</a> )(const <a class="el" href="urep_8h.html#22b35ca6677ac47c2f5b0d01ffbead60">UReplaceable</a> *rep, <a class="el" href="pwin32_8h.html#b1967d8591af1a4e48c37fd2b0f184d0">int32_t</a> offset)</td></tr> <tr><td class="mdescLeft"> </td><td class="mdescRight">Function pointer that returns a UChar32 code point at the given offset into this text. <a href="#6eb341066f05c7799cd13f6b0f1c56e7"></a><br></td></tr> <tr><td class="memItemLeft" nowrap align="right" valign="top">void(* </td><td class="memItemRight" valign="bottom"><a class="el" href="structUReplaceableCallbacks.html#2c289af568adb2040768e83ae847c4b7">replace</a> )(<a class="el" href="urep_8h.html#22b35ca6677ac47c2f5b0d01ffbead60">UReplaceable</a> *rep, <a class="el" href="pwin32_8h.html#b1967d8591af1a4e48c37fd2b0f184d0">int32_t</a> start, <a class="el" href="pwin32_8h.html#b1967d8591af1a4e48c37fd2b0f184d0">int32_t</a> limit, const UChar *text, <a class="el" href="pwin32_8h.html#b1967d8591af1a4e48c37fd2b0f184d0">int32_t</a> textLength)</td></tr> <tr><td class="mdescLeft"> </td><td class="mdescRight">Function pointer that replaces text between start and limit in this text with the given text. <a href="#2c289af568adb2040768e83ae847c4b7"></a><br></td></tr> <tr><td class="memItemLeft" nowrap align="right" valign="top">void(* </td><td class="memItemRight" valign="bottom"><a class="el" href="structUReplaceableCallbacks.html#0973de83b91b9d436c268de9bc878316">extract</a> )(<a class="el" href="urep_8h.html#22b35ca6677ac47c2f5b0d01ffbead60">UReplaceable</a> *rep, <a class="el" href="pwin32_8h.html#b1967d8591af1a4e48c37fd2b0f184d0">int32_t</a> start, <a class="el" href="pwin32_8h.html#b1967d8591af1a4e48c37fd2b0f184d0">int32_t</a> limit, UChar *dst)</td></tr> <tr><td class="mdescLeft"> </td><td class="mdescRight">Function pointer that copies the characters in the range [<code>start</code>, <code>limit</code>) into the array <code>dst</code>. <a href="#0973de83b91b9d436c268de9bc878316"></a><br></td></tr> <tr><td class="memItemLeft" nowrap align="right" valign="top">void(* </td><td class="memItemRight" valign="bottom"><a class="el" href="structUReplaceableCallbacks.html#fe7d8ea1241deed1c92c7209c99199d7">copy</a> )(<a class="el" href="urep_8h.html#22b35ca6677ac47c2f5b0d01ffbead60">UReplaceable</a> *rep, <a class="el" href="pwin32_8h.html#b1967d8591af1a4e48c37fd2b0f184d0">int32_t</a> start, <a class="el" href="pwin32_8h.html#b1967d8591af1a4e48c37fd2b0f184d0">int32_t</a> limit, <a class="el" href="pwin32_8h.html#b1967d8591af1a4e48c37fd2b0f184d0">int32_t</a> dest)</td></tr> <tr><td class="mdescLeft"> </td><td class="mdescRight">Function pointer that copies text between start and limit in this text to another index in the text. <a href="#fe7d8ea1241deed1c92c7209c99199d7"></a><br></td></tr> </table> <hr><a name="_details"></a><h2>Detailed Description</h2> A set of function pointers that transliterators use to manipulate a UReplaceable. <p> The caller should supply the required functions to manipulate their text appropriately. Related to the C++ class <a class="el" href="classReplaceable.html">Replaceable</a>. <dl compact><dt><b><a class="el" href="stable.html#_stable001554">Stable:</a></b></dt><dd>ICU 2.0 </dd></dl> <p> <p> Definition at line <a class="el" href="urep_8h-source.html#l00051">51</a> of file <a class="el" href="urep_8h-source.html">urep.h</a>.<hr><h2>Field Documentation</h2> <a class="anchor" name="be20b175db7fe49c652d32b0047bd44d"></a><!-- doxytag: member="UReplaceableCallbacks::length" ref="be20b175db7fe49c652d32b0047bd44d" args=")(const UReplaceable *rep)" --> <div class="memitem"> <div class="memproto"> <table class="memname"> <tr> <td class="memname"><a class="el" href="pwin32_8h.html#b1967d8591af1a4e48c37fd2b0f184d0">int32_t</a>(* <a class="el" href="structUReplaceableCallbacks.html#be20b175db7fe49c652d32b0047bd44d">UReplaceableCallbacks::length</a>)(const <a class="el" href="urep_8h.html#22b35ca6677ac47c2f5b0d01ffbead60">UReplaceable</a> *rep) </td> </tr> </table> </div> <div class="memdoc"> <p> Function pointer that returns the number of UChar code units in this text. <p> <dl compact><dt><b>Parameters:</b></dt><dd> <table border="0" cellspacing="2" cellpadding="0"> <tr><td valign="top"></td><td valign="top"><em>rep</em> </td><td>A pointer to "this" UReplaceable object. </td></tr> </table> </dl> <dl class="return" compact><dt><b>Returns:</b></dt><dd>The length of the text. </dd></dl> <dl compact><dt><b><a class="el" href="stable.html#_stable001555">Stable:</a></b></dt><dd>ICU 2.0 </dd></dl> </div> </div><p> <a class="anchor" name="dd37b2389b812250b661fe51fe193941"></a><!-- doxytag: member="UReplaceableCallbacks::charAt" ref="dd37b2389b812250b661fe51fe193941" args=")(const UReplaceable *rep, int32_t offset)" --> <div class="memitem"> <div class="memproto"> <table class="memname"> <tr> <td class="memname">UChar(* <a class="el" href="structUReplaceableCallbacks.html#dd37b2389b812250b661fe51fe193941">UReplaceableCallbacks::charAt</a>)(const <a class="el" href="urep_8h.html#22b35ca6677ac47c2f5b0d01ffbead60">UReplaceable</a> *rep, <a class="el" href="pwin32_8h.html#b1967d8591af1a4e48c37fd2b0f184d0">int32_t</a> offset) </td> </tr> </table> </div> <div class="memdoc"> <p> Function pointer that returns a UChar code units at the given offset into this text; 0 <= offset < n, where n is the value returned by (*length)(rep). <p> See <a class="el" href="unistr_8h.html">unistr.h</a> for a description of <a class="el" href="structUReplaceableCallbacks.html#dd37b2389b812250b661fe51fe193941">charAt()</a> vs. <a class="el" href="structUReplaceableCallbacks.html#6eb341066f05c7799cd13f6b0f1c56e7">char32At()</a>.<p> <dl compact><dt><b>Parameters:</b></dt><dd> <table border="0" cellspacing="2" cellpadding="0"> <tr><td valign="top"></td><td valign="top"><em>rep</em> </td><td>A pointer to "this" UReplaceable object. </td></tr> <tr><td valign="top"></td><td valign="top"><em>offset</em> </td><td>The index at which to fetch the UChar (code unit). </td></tr> </table> </dl> <dl class="return" compact><dt><b>Returns:</b></dt><dd>The UChar (code unit) at offset, or U+FFFF if the offset is out of bounds. </dd></dl> <dl compact><dt><b><a class="el" href="stable.html#_stable001556">Stable:</a></b></dt><dd>ICU 2.0 </dd></dl> </div> </div><p> <a class="anchor" name="6eb341066f05c7799cd13f6b0f1c56e7"></a><!-- doxytag: member="UReplaceableCallbacks::char32At" ref="6eb341066f05c7799cd13f6b0f1c56e7" args=")(const UReplaceable *rep, int32_t offset)" --> <div class="memitem"> <div class="memproto"> <table class="memname"> <tr> <td class="memname"><a class="el" href="umachine_8h.html#09fff5c3b5a5b015324dc3ec3cf92809">UChar32</a>(* <a class="el" href="structUReplaceableCallbacks.html#6eb341066f05c7799cd13f6b0f1c56e7">UReplaceableCallbacks::char32At</a>)(const <a class="el" href="urep_8h.html#22b35ca6677ac47c2f5b0d01ffbead60">UReplaceable</a> *rep, <a class="el" href="pwin32_8h.html#b1967d8591af1a4e48c37fd2b0f184d0">int32_t</a> offset) </td> </tr> </table> </div> <div class="memdoc"> <p> Function pointer that returns a UChar32 code point at the given offset into this text. <p> See <a class="el" href="unistr_8h.html">unistr.h</a> for a description of <a class="el" href="structUReplaceableCallbacks.html#dd37b2389b812250b661fe51fe193941">charAt()</a> vs. <a class="el" href="structUReplaceableCallbacks.html#6eb341066f05c7799cd13f6b0f1c56e7">char32At()</a>.<p> <dl compact><dt><b>Parameters:</b></dt><dd> <table border="0" cellspacing="2" cellpadding="0"> <tr><td valign="top"></td><td valign="top"><em>rep</em> </td><td>A pointer to "this" UReplaceable object. </td></tr> <tr><td valign="top"></td><td valign="top"><em>offset</em> </td><td>The index at which to fetch the UChar32 (code point). </td></tr> </table> </dl> <dl class="return" compact><dt><b>Returns:</b></dt><dd>The UChar32 (code point) at offset, or U+FFFF if the offset is out of bounds. </dd></dl> <dl compact><dt><b><a class="el" href="stable.html#_stable001557">Stable:</a></b></dt><dd>ICU 2.0 </dd></dl> </div> </div><p> <a class="anchor" name="2c289af568adb2040768e83ae847c4b7"></a><!-- doxytag: member="UReplaceableCallbacks::replace" ref="2c289af568adb2040768e83ae847c4b7" args=")(UReplaceable *rep, int32_t start, int32_t limit, const UChar *text, int32_t textLength)" --> <div class="memitem"> <div class="memproto"> <table class="memname"> <tr> <td class="memname">void(* <a class="el" href="structUReplaceableCallbacks.html#2c289af568adb2040768e83ae847c4b7">UReplaceableCallbacks::replace</a>)(<a class="el" href="urep_8h.html#22b35ca6677ac47c2f5b0d01ffbead60">UReplaceable</a> *rep, <a class="el" href="pwin32_8h.html#b1967d8591af1a4e48c37fd2b0f184d0">int32_t</a> start, <a class="el" href="pwin32_8h.html#b1967d8591af1a4e48c37fd2b0f184d0">int32_t</a> limit, const UChar *text, <a class="el" href="pwin32_8h.html#b1967d8591af1a4e48c37fd2b0f184d0">int32_t</a> textLength) </td> </tr> </table> </div> <div class="memdoc"> <p> Function pointer that replaces text between start and limit in this text with the given text. <p> Attributes (out of band info) should be retained.<p> <dl compact><dt><b>Parameters:</b></dt><dd> <table border="0" cellspacing="2" cellpadding="0"> <tr><td valign="top"></td><td valign="top"><em>rep</em> </td><td>A pointer to "this" UReplaceable object. </td></tr> <tr><td valign="top"></td><td valign="top"><em>start</em> </td><td>the starting index of the text to be replaced, inclusive. </td></tr> <tr><td valign="top"></td><td valign="top"><em>limit</em> </td><td>the ending index of the text to be replaced, exclusive. </td></tr> <tr><td valign="top"></td><td valign="top"><em>text</em> </td><td>the new text to replace the UChars from start..limit-1. </td></tr> <tr><td valign="top"></td><td valign="top"><em>textLength</em> </td><td>the number of UChars at text, or -1 if text is null-terminated. </td></tr> </table> </dl> <dl compact><dt><b><a class="el" href="stable.html#_stable001558">Stable:</a></b></dt><dd>ICU 2.0 </dd></dl> </div> </div><p> <a class="anchor" name="0973de83b91b9d436c268de9bc878316"></a><!-- doxytag: member="UReplaceableCallbacks::extract" ref="0973de83b91b9d436c268de9bc878316" args=")(UReplaceable *rep, int32_t start, int32_t limit, UChar *dst)" --> <div class="memitem"> <div class="memproto"> <table class="memname"> <tr> <td class="memname">void(* <a class="el" href="structUReplaceableCallbacks.html#0973de83b91b9d436c268de9bc878316">UReplaceableCallbacks::extract</a>)(<a class="el" href="urep_8h.html#22b35ca6677ac47c2f5b0d01ffbead60">UReplaceable</a> *rep, <a class="el" href="pwin32_8h.html#b1967d8591af1a4e48c37fd2b0f184d0">int32_t</a> start, <a class="el" href="pwin32_8h.html#b1967d8591af1a4e48c37fd2b0f184d0">int32_t</a> limit, UChar *dst) </td> </tr> </table> </div> <div class="memdoc"> <p> Function pointer that copies the characters in the range [<code>start</code>, <code>limit</code>) into the array <code>dst</code>. <p> <dl compact><dt><b>Parameters:</b></dt><dd> <table border="0" cellspacing="2" cellpadding="0"> <tr><td valign="top"></td><td valign="top"><em>rep</em> </td><td>A pointer to "this" UReplaceable object. </td></tr> <tr><td valign="top"></td><td valign="top"><em>start</em> </td><td>offset of first character which will be copied into the array </td></tr> <tr><td valign="top"></td><td valign="top"><em>limit</em> </td><td>offset immediately following the last character to be copied </td></tr> <tr><td valign="top"></td><td valign="top"><em>dst</em> </td><td>array in which to copy characters. The length of <code>dst</code> must be at least <code>(limit - start)</code>. </td></tr> </table> </dl> <dl compact><dt><b><a class="el" href="stable.html#_stable001559">Stable:</a></b></dt><dd>ICU 2.1 </dd></dl> </div> </div><p> <a class="anchor" name="fe7d8ea1241deed1c92c7209c99199d7"></a><!-- doxytag: member="UReplaceableCallbacks::copy" ref="fe7d8ea1241deed1c92c7209c99199d7" args=")(UReplaceable *rep, int32_t start, int32_t limit, int32_t dest)" --> <div class="memitem"> <div class="memproto"> <table class="memname"> <tr> <td class="memname">void(* <a class="el" href="structUReplaceableCallbacks.html#fe7d8ea1241deed1c92c7209c99199d7">UReplaceableCallbacks::copy</a>)(<a class="el" href="urep_8h.html#22b35ca6677ac47c2f5b0d01ffbead60">UReplaceable</a> *rep, <a class="el" href="pwin32_8h.html#b1967d8591af1a4e48c37fd2b0f184d0">int32_t</a> start, <a class="el" href="pwin32_8h.html#b1967d8591af1a4e48c37fd2b0f184d0">int32_t</a> limit, <a class="el" href="pwin32_8h.html#b1967d8591af1a4e48c37fd2b0f184d0">int32_t</a> dest) </td> </tr> </table> </div> <div class="memdoc"> <p> Function pointer that copies text between start and limit in this text to another index in the text. <p> Attributes (out of band info) should be retained. After this call, there will be (at least) two copies of the characters originally located at start..limit-1.<p> <dl compact><dt><b>Parameters:</b></dt><dd> <table border="0" cellspacing="2" cellpadding="0"> <tr><td valign="top"></td><td valign="top"><em>rep</em> </td><td>A pointer to "this" UReplaceable object. </td></tr> <tr><td valign="top"></td><td valign="top"><em>start</em> </td><td>the starting index of the text to be copied, inclusive. </td></tr> <tr><td valign="top"></td><td valign="top"><em>limit</em> </td><td>the ending index of the text to be copied, exclusive. </td></tr> <tr><td valign="top"></td><td valign="top"><em>dest</em> </td><td>the index at which the copy of the UChars should be inserted. </td></tr> </table> </dl> <dl compact><dt><b><a class="el" href="stable.html#_stable001560">Stable:</a></b></dt><dd>ICU 2.0 </dd></dl> </div> </div><p> <hr>The documentation for this struct was generated from the following file:<ul> <li><a class="el" href="urep_8h-source.html">urep.h</a></ul> <hr size="1"><address style="align: right;"><small>Generated on Fri Sep 14 12:59:51 2007 for ICU 3.8 by <a href="http://www.doxygen.org/index.html"> <img src="doxygen.png" alt="doxygen" align="middle" border="0"></a> 1.5.1 </small></address> </body> </html>