### gnu.inet.encoding

# Class Punycode

- `java.lang.Object`
- - `gnu.inet.encoding.Punycode`

`public class Punycode`
`extends java.lang.Object`

This class offers static methods for encoding/decoding strings using the Punycode algorithm.

- RFC3492 Punycode

Note that this implementation only supports 16-bit Unicode code points.

  ## Method Summary
  `static int` | `adapt(int delta, int numpoints, boolean first)`
  `static int` | `codepoint2digit(int c)`
  `static String` | `decode(String input)` Decode a punycoded string.
  `static int` | `digit2codepoint(int d)`
  `static String` | `encode(String input)` Punycodes a unicode string.
  `static boolean` | `isBasic(char c)`

## Method Details

### adapt

    public static final int adapt(int delta,
                                  int numpoints,
                                  boolean first)

### codepoint2digit

    public static final int codepoint2digit(int c)
                throws PunycodeException

### decode

    public static String decode(String input)
                throws PunycodeException

> Decode a punycoded string.
> Parameters:
>   `input` - Punycode string
> Returns:
>   Unicode string.

### digit2codepoint

    public static final int digit2codepoint(int d)
                throws PunycodeException

### encode

    public static String encode(String input)
                throws PunycodeException

> Punycodes a unicode string.
> Parameters:
>   `input` - Unicode string.
> Returns:
>   Punycoded string.

### isBasic

    public static final boolean isBasic(char c)