| line | stmt | bran | cond | sub | pod | time | code | 
| 1 |  |  |  |  |  |  | package Encode::JP::Mobile; | 
| 2 | 24 |  |  | 24 |  | 793633 | use strict; | 
|  | 24 |  |  |  |  | 66 |  | 
|  | 24 |  |  |  |  | 1171 |  | 
| 3 |  |  |  |  |  |  | our $VERSION = "0.30"; | 
| 4 |  |  |  |  |  |  |  | 
| 5 | 24 |  |  | 24 |  | 135 | use Carp; | 
|  | 24 |  |  |  |  | 54 |  | 
|  | 24 |  |  |  |  | 2241 |  | 
| 6 | 24 |  |  | 24 |  | 3463 | use Encode; | 
|  | 24 |  |  |  |  | 114841 |  | 
|  | 24 |  |  |  |  | 2490 |  | 
| 7 | 24 |  |  | 24 |  | 152 | use XSLoader; | 
|  | 24 |  |  |  |  | 57 |  | 
|  | 24 |  |  |  |  | 963 |  | 
| 8 |  |  |  |  |  |  | XSLoader::load(__PACKAGE__, $VERSION); | 
| 9 |  |  |  |  |  |  |  | 
| 10 | 24 |  |  | 24 |  | 127 | use base qw( Exporter ); | 
|  | 24 |  |  |  |  | 44 |  | 
|  | 24 |  |  |  |  | 4269 |  | 
| 11 |  |  |  |  |  |  | our @EXPORT_OK = qw( InDoCoMoPictograms InKDDIPictograms InSoftBankPictograms InAirEdgePictograms InMobileJPPictograms InKDDISoftBankConflicts InKDDICP932Pictograms InKDDIAutoPictograms); | 
| 12 |  |  |  |  |  |  | our %EXPORT_TAGS = ( props => [@EXPORT_OK] ); | 
| 13 |  |  |  |  |  |  |  | 
| 14 | 24 |  |  | 24 |  | 143 | use Encode::Alias; | 
|  | 24 |  |  |  |  | 44 |  | 
|  | 24 |  |  |  |  | 3664 |  | 
| 15 |  |  |  |  |  |  |  | 
| 16 |  |  |  |  |  |  | # sjis-raw | 
| 17 |  |  |  |  |  |  | define_alias( 'x-sjis-imode-raw'         => 'x-sjis-docomo-raw' ); | 
| 18 |  |  |  |  |  |  | define_alias( 'x-sjis-airedge-raw'       => 'x-sjis-airh-raw' ); | 
| 19 |  |  |  |  |  |  | define_alias( 'x-sjis-vodafone-auto-raw' => 'x-sjis-softbank-auto-raw' ); | 
| 20 |  |  |  |  |  |  |  | 
| 21 |  |  |  |  |  |  | define_alias( 'x-sjis-kddi'              => 'x-sjis-kddi-cp932-raw' ); | 
| 22 |  |  |  |  |  |  | define_alias( 'x-sjis-ezweb'             => 'x-sjis-kddi-cp932-raw' ); | 
| 23 |  |  |  |  |  |  | define_alias( 'x-sjis-ezweb-cp932-raw'   => 'x-sjis-kddi-cp932-raw' ); | 
| 24 |  |  |  |  |  |  | define_alias( 'x-sjis-ezweb-auto-raw'    => 'x-sjis-kddi-auto-raw' ); | 
| 25 |  |  |  |  |  |  |  | 
| 26 |  |  |  |  |  |  | # backward compatiblity | 
| 27 |  |  |  |  |  |  | define_alias('shift_jis-kddi'       => 'x-sjis-kddi-cp932-raw'); | 
| 28 |  |  |  |  |  |  |  | 
| 29 |  |  |  |  |  |  | # utf8 | 
| 30 |  |  |  |  |  |  | define_alias( 'x-utf8-imode'    => 'x-utf8-docomo' ); | 
| 31 |  |  |  |  |  |  | define_alias( 'x-utf8-ezweb'    => 'x-utf8-kddi' ); | 
| 32 |  |  |  |  |  |  | define_alias( 'x-utf8-vodafone' => 'x-utf8-softbank' ); | 
| 33 |  |  |  |  |  |  |  | 
| 34 | 24 |  |  | 24 |  | 27116 | use Encode::JP::Mobile::Vodafone; | 
|  | 24 |  |  |  |  | 96 |  | 
|  | 24 |  |  |  |  | 863 |  | 
| 35 | 24 |  |  | 24 |  | 18117 | use Encode::JP::Mobile::KDDIJIS; | 
|  | 24 |  |  |  |  | 85 |  | 
|  | 24 |  |  |  |  | 1008 |  | 
| 36 | 24 |  |  | 24 |  | 25838 | use Encode::JP::Mobile::AirHJIS; | 
|  | 24 |  |  |  |  | 76 |  | 
|  | 24 |  |  |  |  | 791 |  | 
| 37 | 24 |  |  | 24 |  | 18558 | use Encode::JP::Mobile::ConvertPictogramSJIS; | 
|  | 24 |  |  |  |  | 73 |  | 
|  | 24 |  |  |  |  | 832 |  | 
| 38 |  |  |  |  |  |  |  | 
| 39 | 24 |  |  | 24 |  | 16855 | use Encode::JP::Mobile::MIME::DoCoMo; | 
|  | 24 |  |  |  |  | 755 |  | 
|  | 24 |  |  |  |  | 906 |  | 
| 40 | 24 |  |  | 24 |  | 26882 | use Encode::JP::Mobile::MIME::KDDI; | 
|  | 24 |  |  |  |  | 70 |  | 
|  | 24 |  |  |  |  | 856 |  | 
| 41 | 24 |  |  | 24 |  | 15317 | use Encode::JP::Mobile::MIME::SoftBank; | 
|  | 24 |  |  |  |  | 64 |  | 
|  | 24 |  |  |  |  | 687 |  | 
| 42 | 24 |  |  | 24 |  | 18034 | use Encode::JP::Mobile::MIME::AirH; | 
|  | 24 |  |  |  |  | 67 |  | 
|  | 24 |  |  |  |  | 1232 |  | 
| 43 |  |  |  |  |  |  |  | 
| 44 |  |  |  |  |  |  | require Encode::JP::Mobile::Fallback; | 
| 45 |  |  |  |  |  |  | require Encode::JP::Mobile::Character; | 
| 46 |  |  |  |  |  |  |  | 
| 47 | 24 |  |  | 24 |  | 24917 | use Encode::MIME::Name; | 
|  | 24 |  |  |  |  | 11280 |  | 
|  | 24 |  |  |  |  | 9858 |  | 
| 48 |  |  |  |  |  |  |  | 
| 49 |  |  |  |  |  |  | for (Encode->encodings('JP::Mobile')) { | 
| 50 |  |  |  |  |  |  | next if defined $Encode::MIME::Name::MIME_NAME_OF{$_}; | 
| 51 |  |  |  |  |  |  | my $mime_name = $_ =~ /utf8/i ? 'UTF-8' | 
| 52 |  |  |  |  |  |  | : $_ =~ /sjis/i ? 'Shift_JIS' | 
| 53 |  |  |  |  |  |  | : $_ =~ /2022/i ? 'ISO-2022-JP' | 
| 54 |  |  |  |  |  |  | : undef; | 
| 55 |  |  |  |  |  |  | $Encode::MIME::Name::MIME_NAME_OF{$_} = $mime_name if $mime_name; | 
| 56 |  |  |  |  |  |  | } | 
| 57 |  |  |  |  |  |  |  | 
| 58 |  |  |  |  |  |  | sub InDoCoMoPictograms { | 
| 59 | 12 |  |  | 12 | 1 | 20791 | return < | 
| 60 |  |  |  |  |  |  | E63E\tE6A5 | 
| 61 |  |  |  |  |  |  | E6AC\tE6AE | 
| 62 |  |  |  |  |  |  | E6B1\tE6B3 | 
| 63 |  |  |  |  |  |  | E6B7\tE6BA | 
| 64 |  |  |  |  |  |  | E6CE\tE757 | 
| 65 |  |  |  |  |  |  | END | 
| 66 |  |  |  |  |  |  | } | 
| 67 |  |  |  |  |  |  |  | 
| 68 |  |  |  |  |  |  | sub InKDDICP932Pictograms { | 
| 69 | 19 |  |  | 19 | 1 | 854836 | return < | 
| 70 |  |  |  |  |  |  | E468\tE5DF | 
| 71 |  |  |  |  |  |  | EA80\tEB88 | 
| 72 |  |  |  |  |  |  | END | 
| 73 |  |  |  |  |  |  | } | 
| 74 |  |  |  |  |  |  |  | 
| 75 |  |  |  |  |  |  | sub InKDDIAutoPictograms { | 
| 76 | 19 |  |  | 19 | 1 | 357452 | return < | 
| 77 |  |  |  |  |  |  | EC40\tEC7E | 
| 78 |  |  |  |  |  |  | EC80\tECFC | 
| 79 |  |  |  |  |  |  | ED40\tED7E | 
| 80 |  |  |  |  |  |  | ED80\tED8D | 
| 81 |  |  |  |  |  |  | EF40\tEF7E | 
| 82 |  |  |  |  |  |  | EF80\tEFFC | 
| 83 |  |  |  |  |  |  | F040\tF07E | 
| 84 |  |  |  |  |  |  | F080\tF0FC | 
| 85 |  |  |  |  |  |  | END | 
| 86 |  |  |  |  |  |  | } | 
| 87 |  |  |  |  |  |  |  | 
| 88 |  |  |  |  |  |  | sub InKDDIPictograms { | 
| 89 | 12 |  |  | 12 | 1 | 1236 | return join "\n", InKDDICP932Pictograms(), InKDDIAutoPictograms(); | 
| 90 |  |  |  |  |  |  | } | 
| 91 |  |  |  |  |  |  |  | 
| 92 |  |  |  |  |  |  | sub InSoftBankPictograms { | 
| 93 | 9 |  |  | 9 | 1 | 401130 | return < | 
| 94 |  |  |  |  |  |  | E001\tE05A | 
| 95 |  |  |  |  |  |  | E101\tE15A | 
| 96 |  |  |  |  |  |  | E201\tE253 | 
| 97 |  |  |  |  |  |  | E255\tE257 | 
| 98 |  |  |  |  |  |  | E301\tE34D | 
| 99 |  |  |  |  |  |  | E401\tE44C | 
| 100 |  |  |  |  |  |  | E501\tE537 | 
| 101 |  |  |  |  |  |  | END | 
| 102 |  |  |  |  |  |  | } | 
| 103 |  |  |  |  |  |  |  | 
| 104 |  |  |  |  |  |  | sub InAirEdgePictograms { | 
| 105 | 7 |  |  | 7 | 1 | 599 | return < | 
| 106 |  |  |  |  |  |  | E000\tE096 | 
| 107 |  |  |  |  |  |  | E098 | 
| 108 |  |  |  |  |  |  | E09A | 
| 109 |  |  |  |  |  |  | E09F | 
| 110 |  |  |  |  |  |  | E0A2 | 
| 111 |  |  |  |  |  |  | E0A6 | 
| 112 |  |  |  |  |  |  | E0A8 | 
| 113 |  |  |  |  |  |  | E0AF | 
| 114 |  |  |  |  |  |  | E0BB | 
| 115 |  |  |  |  |  |  | E0C4 | 
| 116 |  |  |  |  |  |  | E0C9 | 
| 117 |  |  |  |  |  |  | END | 
| 118 |  |  |  |  |  |  | } | 
| 119 |  |  |  |  |  |  |  | 
| 120 |  |  |  |  |  |  | sub InMobileJPPictograms { | 
| 121 |  |  |  |  |  |  | # +utf8::InDoCoMoPictograms etc. don't work here | 
| 122 | 6 |  |  | 6 | 1 | 1101 | return join "\n", InDoCoMoPictograms, InKDDIPictograms, InSoftBankPictograms, InAirEdgePictograms; | 
| 123 |  |  |  |  |  |  | } | 
| 124 |  |  |  |  |  |  |  | 
| 125 |  |  |  |  |  |  | sub InKDDISoftBankConflicts { | 
| 126 | 6 |  |  | 6 | 1 | 29972 | return < | 
| 127 |  |  |  |  |  |  | E501\tE537 | 
| 128 |  |  |  |  |  |  | END | 
| 129 |  |  |  |  |  |  | } | 
| 130 |  |  |  |  |  |  |  | 
| 131 |  |  |  |  |  |  | 1; | 
| 132 |  |  |  |  |  |  | __END__ |