## net.sf.saxon.charcode
Class UnicodeCharacterSet

    java.lang.Object
      net.sf.saxon.charcode.UnicodeCharacterSet

All Implemented Interfaces:
  CharacterSet

    public final class UnicodeCharacterSet

extends Object
implements CharacterSet

This class defines properties of the Unicode character set

Method Summary
`static int` `decodeUTF8(byte[] in, int used)` Decode a UTF8 character
`static UnicodeCharacterSet` `getInstance()`
`static int` `getUTF8Encoding(char in, char in2, byte[] out)` Static method to generate the UTF-8 representation of a Unicode character
`boolean` `inCharset(int c)` Determine if a character is present in the character set

Methods inherited from class java.lang.Object
`equals, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait`

Method Detail

### getInstance

    public static UnicodeCharacterSet getInstance()

### inCharset

    public boolean inCharset(int c)

  Description copied from interface: `CharacterSet`
  Determine if a character is present in the character set

  Specified by:
    `inCharset` in interface `CharacterSet`

### getUTF8Encoding

    public static int getUTF8Encoding(char in,
                                      char in2,
                                      byte[] out)

  Static method to generate the UTF-8 representation of a Unicode character

  Parameters:
    `in` - the Unicode character, or the high half of a surrogate pair
    `in2` - the low half of a surrogate pair (ignored unless the first argument is in the range for a surrogate pair)
    `out` - an array of at least 4 bytes to hold the UTF-8 representation.
  Returns:
    the number of bytes in the UTF-8 representation

### decodeUTF8

    public static int decodeUTF8(byte[] in,
                                 int used)
                          throws IllegalArgumentException

  Decode a UTF8 character

  Throws:
    `IllegalArgumentException` - if the byte sequence is not a valid UTF-8 representation

Copyright (C) Michael H. Kay. All rights reserved.