Blame lib/Encode/Config.pm

Packit d0f5c2
#
Packit d0f5c2
# Demand-load module list
Packit d0f5c2
#
Packit d0f5c2
package Encode::Config;
Packit d0f5c2
our $VERSION = do { my @r = ( q$Revision: 2.5 $ =~ /\d+/g ); sprintf "%d." . "%02d" x $#r, @r };
Packit d0f5c2
Packit d0f5c2
use strict;
Packit d0f5c2
use warnings;
Packit d0f5c2
Packit d0f5c2
our %ExtModule = (
Packit d0f5c2
Packit d0f5c2
    # Encode::Byte
Packit d0f5c2
    #iso-8859-1 is in Encode.pm itself
Packit d0f5c2
    'iso-8859-2'            => 'Encode::Byte',
Packit d0f5c2
    'iso-8859-3'            => 'Encode::Byte',
Packit d0f5c2
    'iso-8859-4'            => 'Encode::Byte',
Packit d0f5c2
    'iso-8859-5'            => 'Encode::Byte',
Packit d0f5c2
    'iso-8859-6'            => 'Encode::Byte',
Packit d0f5c2
    'iso-8859-7'            => 'Encode::Byte',
Packit d0f5c2
    'iso-8859-8'            => 'Encode::Byte',
Packit d0f5c2
    'iso-8859-9'            => 'Encode::Byte',
Packit d0f5c2
    'iso-8859-10'           => 'Encode::Byte',
Packit d0f5c2
    'iso-8859-11'           => 'Encode::Byte',
Packit d0f5c2
    'iso-8859-13'           => 'Encode::Byte',
Packit d0f5c2
    'iso-8859-14'           => 'Encode::Byte',
Packit d0f5c2
    'iso-8859-15'           => 'Encode::Byte',
Packit d0f5c2
    'iso-8859-16'           => 'Encode::Byte',
Packit d0f5c2
    'koi8-f'                => 'Encode::Byte',
Packit d0f5c2
    'koi8-r'                => 'Encode::Byte',
Packit d0f5c2
    'koi8-u'                => 'Encode::Byte',
Packit d0f5c2
    'viscii'                => 'Encode::Byte',
Packit d0f5c2
    'cp424'                 => 'Encode::Byte',
Packit d0f5c2
    'cp437'                 => 'Encode::Byte',
Packit d0f5c2
    'cp737'                 => 'Encode::Byte',
Packit d0f5c2
    'cp775'                 => 'Encode::Byte',
Packit d0f5c2
    'cp850'                 => 'Encode::Byte',
Packit d0f5c2
    'cp852'                 => 'Encode::Byte',
Packit d0f5c2
    'cp855'                 => 'Encode::Byte',
Packit d0f5c2
    'cp856'                 => 'Encode::Byte',
Packit d0f5c2
    'cp857'                 => 'Encode::Byte',
Packit d0f5c2
    'cp858'                 => 'Encode::Byte',
Packit d0f5c2
    'cp860'                 => 'Encode::Byte',
Packit d0f5c2
    'cp861'                 => 'Encode::Byte',
Packit d0f5c2
    'cp862'                 => 'Encode::Byte',
Packit d0f5c2
    'cp863'                 => 'Encode::Byte',
Packit d0f5c2
    'cp864'                 => 'Encode::Byte',
Packit d0f5c2
    'cp865'                 => 'Encode::Byte',
Packit d0f5c2
    'cp866'                 => 'Encode::Byte',
Packit d0f5c2
    'cp869'                 => 'Encode::Byte',
Packit d0f5c2
    'cp874'                 => 'Encode::Byte',
Packit d0f5c2
    'cp1006'                => 'Encode::Byte',
Packit d0f5c2
    'cp1250'                => 'Encode::Byte',
Packit d0f5c2
    'cp1251'                => 'Encode::Byte',
Packit d0f5c2
    'cp1252'                => 'Encode::Byte',
Packit d0f5c2
    'cp1253'                => 'Encode::Byte',
Packit d0f5c2
    'cp1254'                => 'Encode::Byte',
Packit d0f5c2
    'cp1255'                => 'Encode::Byte',
Packit d0f5c2
    'cp1256'                => 'Encode::Byte',
Packit d0f5c2
    'cp1257'                => 'Encode::Byte',
Packit d0f5c2
    'cp1258'                => 'Encode::Byte',
Packit d0f5c2
    'AdobeStandardEncoding' => 'Encode::Byte',
Packit d0f5c2
    'MacArabic'             => 'Encode::Byte',
Packit d0f5c2
    'MacCentralEurRoman'    => 'Encode::Byte',
Packit d0f5c2
    'MacCroatian'           => 'Encode::Byte',
Packit d0f5c2
    'MacCyrillic'           => 'Encode::Byte',
Packit d0f5c2
    'MacFarsi'              => 'Encode::Byte',
Packit d0f5c2
    'MacGreek'              => 'Encode::Byte',
Packit d0f5c2
    'MacHebrew'             => 'Encode::Byte',
Packit d0f5c2
    'MacIcelandic'          => 'Encode::Byte',
Packit d0f5c2
    'MacRoman'              => 'Encode::Byte',
Packit d0f5c2
    'MacRomanian'           => 'Encode::Byte',
Packit d0f5c2
    'MacRumanian'           => 'Encode::Byte',
Packit d0f5c2
    'MacSami'               => 'Encode::Byte',
Packit d0f5c2
    'MacThai'               => 'Encode::Byte',
Packit d0f5c2
    'MacTurkish'            => 'Encode::Byte',
Packit d0f5c2
    'MacUkrainian'          => 'Encode::Byte',
Packit d0f5c2
    'nextstep'              => 'Encode::Byte',
Packit d0f5c2
    'hp-roman8'             => 'Encode::Byte',
Packit d0f5c2
    #'gsm0338'               => 'Encode::Byte',
Packit d0f5c2
    'gsm0338'               => 'Encode::GSM0338',
Packit d0f5c2
Packit d0f5c2
    # Encode::EBCDIC
Packit d0f5c2
    'cp37'     => 'Encode::EBCDIC',
Packit d0f5c2
    'cp500'    => 'Encode::EBCDIC',
Packit d0f5c2
    'cp875'    => 'Encode::EBCDIC',
Packit d0f5c2
    'cp1026'   => 'Encode::EBCDIC',
Packit d0f5c2
    'cp1047'   => 'Encode::EBCDIC',
Packit d0f5c2
    'posix-bc' => 'Encode::EBCDIC',
Packit d0f5c2
Packit d0f5c2
    # Encode::Symbol
Packit d0f5c2
    'dingbats'      => 'Encode::Symbol',
Packit d0f5c2
    'symbol'        => 'Encode::Symbol',
Packit d0f5c2
    'AdobeSymbol'   => 'Encode::Symbol',
Packit d0f5c2
    'AdobeZdingbat' => 'Encode::Symbol',
Packit d0f5c2
    'MacDingbats'   => 'Encode::Symbol',
Packit d0f5c2
    'MacSymbol'     => 'Encode::Symbol',
Packit d0f5c2
Packit d0f5c2
    # Encode::Unicode
Packit d0f5c2
    'UCS-2BE'  => 'Encode::Unicode',
Packit d0f5c2
    'UCS-2LE'  => 'Encode::Unicode',
Packit d0f5c2
    'UTF-16'   => 'Encode::Unicode',
Packit d0f5c2
    'UTF-16BE' => 'Encode::Unicode',
Packit d0f5c2
    'UTF-16LE' => 'Encode::Unicode',
Packit d0f5c2
    'UTF-32'   => 'Encode::Unicode',
Packit d0f5c2
    'UTF-32BE' => 'Encode::Unicode',
Packit d0f5c2
    'UTF-32LE' => 'Encode::Unicode',
Packit d0f5c2
    'UTF-7'    => 'Encode::Unicode::UTF7',
Packit d0f5c2
);
Packit d0f5c2
Packit d0f5c2
unless ( ord("A") == 193 ) {
Packit d0f5c2
    %ExtModule = (
Packit d0f5c2
        %ExtModule,
Packit d0f5c2
        'euc-cn'         => 'Encode::CN',
Packit d0f5c2
        'gb12345-raw'    => 'Encode::CN',
Packit d0f5c2
        'gb2312-raw'     => 'Encode::CN',
Packit d0f5c2
        'hz'             => 'Encode::CN',
Packit d0f5c2
        'iso-ir-165'     => 'Encode::CN',
Packit d0f5c2
        'cp936'          => 'Encode::CN',
Packit d0f5c2
        'MacChineseSimp' => 'Encode::CN',
Packit d0f5c2
Packit d0f5c2
        '7bit-jis'      => 'Encode::JP',
Packit d0f5c2
        'euc-jp'        => 'Encode::JP',
Packit d0f5c2
        'iso-2022-jp'   => 'Encode::JP',
Packit d0f5c2
        'iso-2022-jp-1' => 'Encode::JP',
Packit d0f5c2
        'jis0201-raw'   => 'Encode::JP',
Packit d0f5c2
        'jis0208-raw'   => 'Encode::JP',
Packit d0f5c2
        'jis0212-raw'   => 'Encode::JP',
Packit d0f5c2
        'cp932'         => 'Encode::JP',
Packit d0f5c2
        'MacJapanese'   => 'Encode::JP',
Packit d0f5c2
        'shiftjis'      => 'Encode::JP',
Packit d0f5c2
Packit d0f5c2
        'euc-kr'      => 'Encode::KR',
Packit d0f5c2
        'iso-2022-kr' => 'Encode::KR',
Packit d0f5c2
        'johab'       => 'Encode::KR',
Packit d0f5c2
        'ksc5601-raw' => 'Encode::KR',
Packit d0f5c2
        'cp949'       => 'Encode::KR',
Packit d0f5c2
        'MacKorean'   => 'Encode::KR',
Packit d0f5c2
Packit d0f5c2
        'big5-eten'      => 'Encode::TW',
Packit d0f5c2
        'big5-hkscs'     => 'Encode::TW',
Packit d0f5c2
        'cp950'          => 'Encode::TW',
Packit d0f5c2
        'MacChineseTrad' => 'Encode::TW',
Packit d0f5c2
Packit d0f5c2
        #'big5plus'           => 'Encode::HanExtra',
Packit d0f5c2
        #'euc-tw'             => 'Encode::HanExtra',
Packit d0f5c2
        #'gb18030'            => 'Encode::HanExtra',
Packit d0f5c2
Packit d0f5c2
        'MIME-Header' => 'Encode::MIME::Header',
Packit d0f5c2
        'MIME-B'      => 'Encode::MIME::Header',
Packit d0f5c2
        'MIME-Q'      => 'Encode::MIME::Header',
Packit d0f5c2
Packit d0f5c2
        'MIME-Header-ISO_2022_JP' => 'Encode::MIME::Header::ISO_2022_JP',
Packit d0f5c2
    );
Packit d0f5c2
}
Packit d0f5c2
Packit d0f5c2
#
Packit d0f5c2
# Why not export ? to keep ConfigLocal Happy!
Packit d0f5c2
#
Packit d0f5c2
while ( my ( $enc, $mod ) = each %ExtModule ) {
Packit d0f5c2
    $Encode::ExtModule{$enc} = $mod;
Packit d0f5c2
}
Packit d0f5c2
Packit d0f5c2
1;
Packit d0f5c2
__END__
Packit d0f5c2
Packit d0f5c2
=head1 NAME
Packit d0f5c2
Packit d0f5c2
Encode::Config -- internally used by Encode
Packit d0f5c2
Packit d0f5c2
=cut