Main Page   Class Hierarchy   Alphabetical List   Compound List   File List   Compound Members   File Members  

HexToUnicodeTransliterator Class Reference

A transliterator that converts from hexadecimal Unicode escape sequences to the characters they represent. More...

#include <hextouni.h>

Inheritance diagram for HexToUnicodeTransliterator:

Transliterator List of all members.

Public Methods

 HexToUnicodeTransliterator (UnicodeFilter* adoptedFilter = 0)
 Constructs a transliterator that recognizes the standard prefixes "&#92;u", "&#92;U", "u+", and "U+", each with no suffix. More...

 HexToUnicodeTransliterator (const UnicodeString& pattern, UErrorCode& status)
 Constructs a custom transliterator with the given pattern. More...

 HexToUnicodeTransliterator (const UnicodeString& pattern, UnicodeFilter* adoptedFilter, UErrorCode& status)
 Constructs a custom transliterator with the given pattern and filter. More...

virtual ~HexToUnicodeTransliterator ()
 Destructor. More...

 HexToUnicodeTransliterator (const HexToUnicodeTransliterator&)
 Copy constructor. More...

HexToUnicodeTransliterator& operator= (const HexToUnicodeTransliterator&)
 Assignment operator. More...

Transliteratorclone (void) const
 Transliterator API. More...

void applyPattern (const UnicodeString& thePattern, UErrorCode& status)
 Set the patterns recognized by this transliterator. More...

const UnicodeStringtoPattern (void) const
 Return this transliterator's pattern.

virtual void handleTransliterate (Replaceable& text, UTransPosition& offset, UBool isIncremental) const
 Implements. More...


Private Types

enum  { SEMICOLON = 0x003B, ZERO = 0x0030, POUND = 0x0023, BACKSLASH = 0x005C }

Private Attributes

UnicodeString pattern
 The pattern for this transliterator. More...

UnicodeString affixes
 The processed pattern specification. More...

int32_t affixCount
 The number of different affix sets in affixes. More...


Static Private Attributes

const char* _ID
 ID for this transliterator. More...

const UnicodeString DEFAULT_PATTERN
 The pattern used by the default constructor. More...


Detailed Description

A transliterator that converts from hexadecimal Unicode escape sequences to the characters they represent.

For example, "U+0040" and '\u0040'. A default HexToUnicodeTransliterator recognizes the prefixes "U+", "u+", "&#92;U", and "&#92;u". Hex values may be upper- or lowercase. By calling the applyPattern() method, one or more custom prefix/suffix pairs may be specified. See applyPattern() for details.

Copyright © IBM Corporation 1999. All rights reserved.

Author(s):
Alan Liu
Version:
RCSfile:
hextouni.h,v
Revision:
1.8
Date:
2001/03/22 00:09:10
Draft:

Definition at line 28 of file hextouni.h.


Member Enumeration Documentation

anonymous enum [private]
 

Enumeration values:
SEMICOLON  
ZERO  
POUND  
BACKSLASH  

Definition at line 41 of file hextouni.h.


Constructor & Destructor Documentation

HexToUnicodeTransliterator::HexToUnicodeTransliterator ( UnicodeFilter * adoptedFilter = 0 )
 

Constructs a transliterator that recognizes the standard prefixes "&#92;u", "&#92;U", "u+", and "U+", each with no suffix.

Draft:

HexToUnicodeTransliterator::HexToUnicodeTransliterator ( const UnicodeString & pattern,
UErrorCode & status )
 

Constructs a custom transliterator with the given pattern.

See also:
applyPattern

HexToUnicodeTransliterator::HexToUnicodeTransliterator ( const UnicodeString & pattern,
UnicodeFilter * adoptedFilter,
UErrorCode & status )
 

Constructs a custom transliterator with the given pattern and filter.

See also:
applyPattern

HexToUnicodeTransliterator::~HexToUnicodeTransliterator ( ) [inline, virtual]
 

Destructor.

Draft:

Definition at line 155 of file hextouni.h.

HexToUnicodeTransliterator::HexToUnicodeTransliterator ( const HexToUnicodeTransliterator & )
 

Copy constructor.

Draft:


Member Function Documentation

void HexToUnicodeTransliterator::applyPattern ( const UnicodeString & thePattern,
UErrorCode & status )
 

Set the patterns recognized by this transliterator.

One or more patterns may be specified, separated by semicolons (';'). Each pattern contains zero or more prefix characters, one or more digit characters, and zero or more suffix characters. The digit characters indicates optional digits ('#') followed by required digits ('0'). The total number of digits cannot exceed 4, and must be at least 1 required digit. Use a backslash ('\') to escape any of the special characters. An empty pattern is allowed; it specifies a transliterator that does nothing.

Example: "U+0000;<###0>" specifies two patterns. The first has a prefix of "U+", exactly four digits, and no suffix. The second has a prefix of "<", between one and four digits, and a suffix of ">".

 pattern := spec | ( pattern ';' spec )
 spec := prefix-char* digit-spec suffix-char*
 digit-spec := '#'* '0'+
 prefix-char := [^special-char] | '\' special-char
 suffix-char := [^special-char] | '\' special-char
 special-char := ';' | '0' | '#' | '\'
 

Transliterator * HexToUnicodeTransliterator::clone ( void ) const [virtual]
 

Transliterator API.

Draft:

Reimplemented from Transliterator.

void HexToUnicodeTransliterator::handleTransliterate ( Replaceable & text,
UTransPosition & offset,
UBool isIncremental ) const [virtual]
 

Implements.

Transliterator#handleTransliterate.

Draft:

Reimplemented from Transliterator.

HexToUnicodeTransliterator & HexToUnicodeTransliterator::operator= ( const HexToUnicodeTransliterator & )
 

Assignment operator.

Draft:

const UnicodeString & HexToUnicodeTransliterator::toPattern ( void ) const
 

Return this transliterator's pattern.


Member Data Documentation

const UnicodeString HexToUnicodeTransliterator::DEFAULT_PATTERN [static, private]
 

The pattern used by the default constructor.

Definition at line 38 of file hextouni.h.

const char * HexToUnicodeTransliterator::_ID [static, private]
 

ID for this transliterator.

Definition at line 33 of file hextouni.h.

int32_t HexToUnicodeTransliterator::affixCount [private]
 

The number of different affix sets in affixes.

Definition at line 62 of file hextouni.h.

UnicodeString HexToUnicodeTransliterator::affixes [private]
 

The processed pattern specification.

See applyPattern() for details.

Definition at line 57 of file hextouni.h.

UnicodeString HexToUnicodeTransliterator::pattern [private]
 

The pattern for this transliterator.

Definition at line 51 of file hextouni.h.


The documentation for this class was generated from the following file:
Generated at Tue Jun 12 14:04:33 2001 for ICU 1.8.1 by doxygen1.2.3 written by Dimitri van Heesch, © 1997-2000