net.freeutils.charset.iso646.ISO646PT2Charset Maven / Gradle / Ivy
/*
* Copyright © 2005-2015 Amichai Rothman
*
* This file is part of JCharset - the Java Charset package.
*
* JCharset is free software: you can redistribute it and/or modify
* it under the terms of the GNU General Public License as published by
* the Free Software Foundation, either version 2 of the License, or
* (at your option) any later version.
*
* JCharset is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
*
* You should have received a copy of the GNU General Public License
* along with JCharset. If not, see .
*
* For additional info see http://www.freeutils.net/source/jcharset/
*/
package net.freeutils.charset.iso646;
import net.freeutils.charset.ByteLookupCharset;
/**
* The ISO646PT2Charset class handles the encoding and decoding of the
* ISO646-PT2 national variant of the ISO/IEC 646 charset.
*
* @author Amichai Rothman
* @since 2015-08-18
*/
public class ISO646PT2Charset extends ByteLookupCharset {
static final String NAME = "ISO646-PT2";
static final String[] ALIASES = { "ISO-IR-84" };
static final int[] BYTE_TO_CHAR = mutate(ISO646USCharset.BYTE_TO_CHAR,
new int[] { 0x40, 0x5B, 0x5C, 0x5D, 0x7B, 0x7C, 0x7D },
new int[] { 0xB4, 0xC3, 0xC7, 0xD5, 0xE3, 0xE7, 0xF5 });
static final int[][] CHAR_TO_BYTE = createInverseLookupTable(BYTE_TO_CHAR);
/**
* Constructs an instance of the ISO646PT2Charset.
*/
public ISO646PT2Charset() {
super(NAME, ALIASES, BYTE_TO_CHAR, CHAR_TO_BYTE);
}
}