Commit aeed17d0 authored by Heikki Linnakangas's avatar Heikki Linnakangas

Use radix tree for character encoding conversions.

Replace the mapping tables used to convert between UTF-8 and other
character encodings with new radix tree-based maps. Looking up an entry in
a radix tree is much faster than a binary search in the old maps. As a
bonus, the radix tree representation is also more compact, making the
binaries slightly smaller.

The "combined" maps work the same as before, with binary search. They are
much smaller than the main tables, so it doesn't matter so much. However,
the "combined" maps are now stored in the same .map files as the main
tables. This seems more clear, since they're always used together, and
generated from the same source files.

Patch by Kyotaro Horiguchi, with lot of hacking by me at various stages.
Reviewed by Michael Paquier and Daniel Gustafsson.

Discussion: https://www.postgresql.org/message-id/20170306.171609.204324917.horiguchi.kyotaro%40lab.ntt.co.jp
parent 84892692
...@@ -52,10 +52,8 @@ SPECIALMAPS = euc_cn_to_utf8.map utf8_to_euc_cn.map \ ...@@ -52,10 +52,8 @@ SPECIALMAPS = euc_cn_to_utf8.map utf8_to_euc_cn.map \
big5_to_utf8.map utf8_to_big5.map \ big5_to_utf8.map utf8_to_big5.map \
johab_to_utf8.map utf8_to_johab.map \ johab_to_utf8.map utf8_to_johab.map \
uhc_to_utf8.map utf8_to_uhc.map \ uhc_to_utf8.map utf8_to_uhc.map \
euc_jis_2004_to_utf8.map euc_jis_2004_to_utf8_combined.map \ euc_jis_2004_to_utf8.map utf8_to_euc_jis_2004.map \
utf8_to_euc_jis_2004.map utf8_to_euc_jis_2004_combined.map \ shift_jis_2004_to_utf8.map utf8_to_shift_jis_2004.map
shift_jis_2004_to_utf8.map shift_jis_2004_to_utf8_combined.map \
utf8_to_shift_jis_2004.map utf8_to_shift_jis_2004_combined.map
MAPS = $(GENERICMAPS) $(SPECIALMAPS) MAPS = $(GENERICMAPS) $(SPECIALMAPS)
...@@ -104,10 +102,10 @@ gb18030_to_utf8.map utf8_to_gb18030.map: UCS_to_GB18030.pl gb-18030-2000.xml ...@@ -104,10 +102,10 @@ gb18030_to_utf8.map utf8_to_gb18030.map: UCS_to_GB18030.pl gb-18030-2000.xml
big5_to_utf8.map utf8_to_big5.map: UCS_to_BIG5.pl BIG5.TXT CP950.TXT big5_to_utf8.map utf8_to_big5.map: UCS_to_BIG5.pl BIG5.TXT CP950.TXT
$(PERL) $< $(PERL) $<
euc_jis_2004_to_utf8.map euc_jis_2004_to_utf8_combined.map utf8_to_euc_jis_2004.map utf8_to_euc_jis_2004_combined.map: UCS_to_EUC_JIS_2004.pl euc-jis-2004-std.txt euc_jis_2004_to_utf8.map utf8_to_euc_jis_2004.map: UCS_to_EUC_JIS_2004.pl euc-jis-2004-std.txt
$(PERL) $< $(PERL) $<
shift_jis_2004_to_utf8.map shift_jis_2004_to_utf8_combined.map utf8_to_shift_jis_2004.map utf8_to_shift_jis_2004_combined.map: UCS_to_SHIFT_JIS_2004.pl sjis-0213-2004-std.txt shift_jis_2004_to_utf8.map utf8_to_shift_jis_2004.map: UCS_to_SHIFT_JIS_2004.pl sjis-0213-2004-std.txt
$(PERL) $< $(PERL) $<
distclean: clean distclean: clean
......
...@@ -25,7 +25,9 @@ ...@@ -25,7 +25,9 @@
# # and Unicode name (not used in this script) # # and Unicode name (not used in this script)
use strict; use strict;
require convutils; use convutils;
my $this_script = $0;
# Load BIG5.TXT # Load BIG5.TXT
my $all = &read_source("BIG5.TXT"); my $all = &read_source("BIG5.TXT");
...@@ -47,7 +49,9 @@ foreach my $i (@$cp950txt) { ...@@ -47,7 +49,9 @@ foreach my $i (@$cp950txt) {
push @$all, {code => $code, push @$all, {code => $code,
ucs => $ucs, ucs => $ucs,
comment => $i->{comment}, comment => $i->{comment},
direction => "both"}; direction => BOTH,
f => $i->{f},
l => $i->{l} };
} }
} }
...@@ -60,9 +64,9 @@ foreach my $i (@$all) { ...@@ -60,9 +64,9 @@ foreach my $i (@$all) {
# but for historical reasons, we map the first one of them. # but for historical reasons, we map the first one of them.
if ($i->{ucs} == 0xFFFD && $i->{code} != 0xA15A) if ($i->{ucs} == 0xFFFD && $i->{code} != 0xA15A)
{ {
$i->{direction} = "to_unicode"; $i->{direction} = TO_UNICODE;
} }
} }
# Output # Output
print_tables("BIG5", $all); print_conversion_tables($this_script, "BIG5", $all);
...@@ -14,7 +14,9 @@ ...@@ -14,7 +14,9 @@
# and the "b" field is the hex byte sequence for GB18030 # and the "b" field is the hex byte sequence for GB18030
use strict; use strict;
require convutils; use convutils;
my $this_script = $0;
# Read the input # Read the input
...@@ -68,9 +70,11 @@ while (<$in>) ...@@ -68,9 +70,11 @@ while (<$in>)
push @mapping, { push @mapping, {
ucs => $ucs, ucs => $ucs,
code => $code, code => $code,
direction => 'both' direction => BOTH,
f => $in_file,
l => $.
}; };
} }
close($in); close($in);
print_tables("EUC_CN", \@mapping); print_conversion_tables($this_script, "EUC_CN", \@mapping);
...@@ -8,7 +8,9 @@ ...@@ -8,7 +8,9 @@
# "euc-jis-2004-std.txt" (http://x0213.org) # "euc-jis-2004-std.txt" (http://x0213.org)
use strict; use strict;
require convutils; use convutils;
my $this_script = $0;
# first generate UTF-8 --> EUC_JIS_2004 table # first generate UTF-8 --> EUC_JIS_2004 table
...@@ -29,12 +31,14 @@ while (my $line = <$in>) ...@@ -29,12 +31,14 @@ while (my $line = <$in>)
my $ucs1 = hex($u1); my $ucs1 = hex($u1);
my $ucs2 = hex($u2); my $ucs2 = hex($u2);
push @all, { direction => 'both', push @all, { direction => BOTH,
ucs => $ucs1, ucs => $ucs1,
ucs_second => $ucs2, ucs_second => $ucs2,
code => $code, code => $code,
comment => $rest }; comment => $rest,
next; f => $in_file,
l => $.
};
} }
elsif ($line =~ /^0x(.*)[ \t]*U\+(.*)[ \t]*#(.*)$/) elsif ($line =~ /^0x(.*)[ \t]*U\+(.*)[ \t]*#(.*)$/)
{ {
...@@ -45,9 +49,15 @@ while (my $line = <$in>) ...@@ -45,9 +49,15 @@ while (my $line = <$in>)
next if ($code < 0x80 && $ucs < 0x80); next if ($code < 0x80 && $ucs < 0x80);
push @all, { direction => 'both', ucs => $ucs, code => $code, comment => $rest }; push @all, { direction => BOTH,
ucs => $ucs,
code => $code,
comment => $rest,
f => $in_file,
l => $.
};
} }
} }
close($in); close($in);
print_tables("EUC_JIS_2004", \@all, 1); print_conversion_tables($this_script, "EUC_JIS_2004", \@all);
...@@ -17,7 +17,9 @@ ...@@ -17,7 +17,9 @@
# # and Unicode name (not used in this script) # # and Unicode name (not used in this script)
use strict; use strict;
require convutils; use convutils;
my $this_script = $0;
# Load the source file. # Load the source file.
...@@ -29,10 +31,10 @@ foreach my $i (@$mapping) ...@@ -29,10 +31,10 @@ foreach my $i (@$mapping)
} }
# Some extra characters that are not in KSX1001.TXT # Some extra characters that are not in KSX1001.TXT
push @$mapping, ( push @$mapping,(
{direction => 'both', ucs => 0x20AC, code => 0xa2e6, comment => '# EURO SIGN'}, {direction => BOTH, ucs => 0x20AC, code => 0xa2e6, comment => '# EURO SIGN', f => $this_script, l => __LINE__},
{direction => 'both', ucs => 0x00AE, code => 0xa2e7, comment => '# REGISTERED SIGN'}, {direction => BOTH, ucs => 0x00AE, code => 0xa2e7, comment => '# REGISTERED SIGN', f => $this_script, l => __LINE__ },
{direction => 'both', ucs => 0x327E, code => 0xa2e8, comment => '# CIRCLED HANGUL IEUNG U'} {direction => BOTH, ucs => 0x327E, code => 0xa2e8, comment => '# CIRCLED HANGUL IEUNG U', f => $this_script, l => __LINE__ }
); );
print_tables("EUC_KR", $mapping); print_conversion_tables($this_script, "EUC_KR", $mapping);
...@@ -18,7 +18,9 @@ ...@@ -18,7 +18,9 @@
# # and Unicode name (not used in this script) # # and Unicode name (not used in this script)
use strict; use strict;
require convutils; use convutils;
my $this_script = $0;
my $mapping = &read_source("CNS11643.TXT"); my $mapping = &read_source("CNS11643.TXT");
...@@ -54,11 +56,13 @@ foreach my $i (@$mapping) ...@@ -54,11 +56,13 @@ foreach my $i (@$mapping)
ucs => $i->{ucs}, ucs => $i->{ucs},
code => ($i->{code} + 0x8ea10000), code => ($i->{code} + 0x8ea10000),
rest => $i->{rest}, rest => $i->{rest},
direction => 'to_unicode' direction => TO_UNICODE,
f => $i->{f},
l => $i->{l}
}; };
} }
} }
push @$mapping, @extras; push @$mapping, @extras;
print_tables("EUC_TW", $mapping); print_conversion_tables($this_script, "EUC_TW", $mapping);
...@@ -14,7 +14,9 @@ ...@@ -14,7 +14,9 @@
# and the "b" field is the hex byte sequence for GB18030 # and the "b" field is the hex byte sequence for GB18030
use strict; use strict;
require convutils; use convutils;
my $this_script = $0;
# Read the input # Read the input
...@@ -36,10 +38,12 @@ while (<$in>) ...@@ -36,10 +38,12 @@ while (<$in>)
push @mapping, { push @mapping, {
ucs => $ucs, ucs => $ucs,
code => $code, code => $code,
direction => 'both' direction => BOTH,
f => $in_file,
l => $.
}; };
} }
} }
close($in); close($in);
print_tables("GB18030", \@mapping); print_conversion_tables($this_script, "GB18030", \@mapping);
...@@ -16,7 +16,9 @@ ...@@ -16,7 +16,9 @@
# # and Unicode name (not used in this script) # # and Unicode name (not used in this script)
use strict; use strict;
require convutils; use convutils;
my $this_script = $0;
# Load the source file. # Load the source file.
...@@ -24,9 +26,9 @@ my $mapping = &read_source("JOHAB.TXT"); ...@@ -24,9 +26,9 @@ my $mapping = &read_source("JOHAB.TXT");
# Some extra characters that are not in JOHAB.TXT # Some extra characters that are not in JOHAB.TXT
push @$mapping, ( push @$mapping, (
{direction => 'both', ucs => 0x20AC, code => 0xd9e6, comment => '# EURO SIGN'}, {direction => BOTH, ucs => 0x20AC, code => 0xd9e6, comment => '# EURO SIGN', f => $this_script, l => __LINE__ },
{direction => 'both', ucs => 0x00AE, code => 0xd9e7, comment => '# REGISTERED SIGN'}, {direction => BOTH, ucs => 0x00AE, code => 0xd9e7, comment => '# REGISTERED SIGN', f => $this_script, l => __LINE__ },
{direction => 'both', ucs => 0x327E, code => 0xd9e8, comment => '# CIRCLED HANGUL IEUNG U'} {direction => BOTH, ucs => 0x327E, code => 0xd9e8, comment => '# CIRCLED HANGUL IEUNG U', f => $this_script, l => __LINE__ }
); );
print_tables("JOHAB", $mapping); print_conversion_tables($this_script, "JOHAB", $mapping);
...@@ -8,10 +8,12 @@ ...@@ -8,10 +8,12 @@
# "sjis-0213-2004-std.txt" (http://x0213.org) # "sjis-0213-2004-std.txt" (http://x0213.org)
use strict; use strict;
require convutils; use convutils;
# first generate UTF-8 --> SHIFT_JIS_2004 table # first generate UTF-8 --> SHIFT_JIS_2004 table
my $this_script = $0;
my $in_file = "sjis-0213-2004-std.txt"; my $in_file = "sjis-0213-2004-std.txt";
open(my $in, '<', $in_file) || die("cannot open $in_file"); open(my $in, '<', $in_file) || die("cannot open $in_file");
...@@ -34,9 +36,10 @@ while (my $line = <$in>) ...@@ -34,9 +36,10 @@ while (my $line = <$in>)
ucs => $ucs1, ucs => $ucs1,
ucs_second => $ucs2, ucs_second => $ucs2,
comment => $rest, comment => $rest,
direction => 'both' direction => BOTH,
f => $in_file,
l => $.
}; };
next;
} }
elsif ($line =~ /^0x(.*)[ \t]*U\+(.*)[ \t]*#(.*)$/) elsif ($line =~ /^0x(.*)[ \t]*U\+(.*)[ \t]*#(.*)$/)
{ {
...@@ -52,25 +55,27 @@ while (my $line = <$in>) ...@@ -52,25 +55,27 @@ while (my $line = <$in>)
} }
elsif ($code < 0x80) elsif ($code < 0x80)
{ {
$direction = 'from_unicode'; $direction = FROM_UNICODE;
} }
elsif ($ucs < 0x80) elsif ($ucs < 0x80)
{ {
$direction = 'to_unicode'; $direction = TO_UNICODE;
} }
else else
{ {
$direction = 'both'; $direction = BOTH;
} }
push @mapping, { push @mapping, {
code => $code, code => $code,
ucs => $ucs, ucs => $ucs,
comment => $rest, comment => $rest,
direction => $direction direction => $direction,
f => $in_file,
l => $.
}; };
} }
} }
close($in); close($in);
print_tables("SHIFT_JIS_2004", \@mapping, 1); print_conversion_tables($this_script, "SHIFT_JIS_2004", \@mapping);
...@@ -11,9 +11,11 @@ ...@@ -11,9 +11,11 @@
# ftp site. # ftp site.
use strict; use strict;
require convutils; use convutils;
my $charset = read_source("CP932.TXT"); my $this_script = $0;
my $mapping = read_source("CP932.TXT");
# Drop these SJIS codes from the source for UTF8=>SJIS conversion # Drop these SJIS codes from the source for UTF8=>SJIS conversion
my @reject_sjis =( my @reject_sjis =(
...@@ -22,27 +24,27 @@ my @reject_sjis =( ...@@ -22,27 +24,27 @@ my @reject_sjis =(
0x879a..0x879c 0x879a..0x879c
); );
foreach my $i (@$charset) foreach my $i (@$mapping)
{ {
my $code = $i->{code}; my $code = $i->{code};
my $ucs = $i->{ucs}; my $ucs = $i->{ucs};
if (grep {$code == $_} @reject_sjis) if (grep {$code == $_} @reject_sjis)
{ {
$i->{direction} = "to_unicode"; $i->{direction} = TO_UNICODE;
} }
} }
# Add these UTF8->SJIS pairs to the table. # Add these UTF8->SJIS pairs to the table.
push @$charset, ( push @$mapping, (
{direction => "from_unicode", ucs => 0x00a2, code => 0x8191, comment => '# CENT SIGN'}, {direction => FROM_UNICODE, ucs => 0x00a2, code => 0x8191, comment => '# CENT SIGN', f => $this_script, l => __LINE__ },
{direction => "from_unicode", ucs => 0x00a3, code => 0x8192, comment => '# POUND SIGN'}, {direction => FROM_UNICODE, ucs => 0x00a3, code => 0x8192, comment => '# POUND SIGN', f => $this_script, l => __LINE__ },
{direction => "from_unicode", ucs => 0x00a5, code => 0x5c, comment => '# YEN SIGN'}, {direction => FROM_UNICODE, ucs => 0x00a5, code => 0x5c, comment => '# YEN SIGN', f => $this_script, l => __LINE__ },
{direction => "from_unicode", ucs => 0x00ac, code => 0x81ca, comment => '# NOT SIGN'}, {direction => FROM_UNICODE, ucs => 0x00ac, code => 0x81ca, comment => '# NOT SIGN', f => $this_script, l => __LINE__ },
{direction => "from_unicode", ucs => 0x2016, code => 0x8161, comment => '# DOUBLE VERTICAL LINE'}, {direction => FROM_UNICODE, ucs => 0x2016, code => 0x8161, comment => '# DOUBLE VERTICAL LINE', f => $this_script, l => __LINE__ },
{direction => "from_unicode", ucs => 0x203e, code => 0x7e, comment => '# OVERLINE'}, {direction => FROM_UNICODE, ucs => 0x203e, code => 0x7e, comment => '# OVERLINE', f => $this_script, l => __LINE__ },
{direction => "from_unicode", ucs => 0x2212, code => 0x817c, comment => '# MINUS SIGN'}, {direction => FROM_UNICODE, ucs => 0x2212, code => 0x817c, comment => '# MINUS SIGN', f => $this_script, l => __LINE__ },
{direction => "from_unicode", ucs => 0x301c, code => 0x8160, comment => '# WAVE DASH'} {direction => FROM_UNICODE, ucs => 0x301c, code => 0x8160, comment => '# WAVE DASH', f => $this_script, l => __LINE__ }
); );
print_tables("SJIS", $charset); print_conversion_tables($this_script, "SJIS", $mapping);
...@@ -14,7 +14,9 @@ ...@@ -14,7 +14,9 @@
# and the "b" field is the hex byte sequence for UHC # and the "b" field is the hex byte sequence for UHC
use strict; use strict;
require convutils; use convutils;
my $this_script = $0;
# Read the input # Read the input
...@@ -39,13 +41,15 @@ while (<$in>) ...@@ -39,13 +41,15 @@ while (<$in>)
push @mapping, { push @mapping, {
ucs => $ucs, ucs => $ucs,
code => $code, code => $code,
direction => 'both' direction => BOTH,
f => $in_file,
l => $.
}; };
} }
} }
close($in); close($in);
# One extra character that's not in the source file. # One extra character that's not in the source file.
push @mapping, { direction => 'both', code => 0xa2e8, ucs => 0x327e, comment => 'CIRCLED HANGUL IEUNG U' }; push @mapping, { direction => BOTH, code => 0xa2e8, ucs => 0x327e, comment => 'CIRCLED HANGUL IEUNG U', f => $this_script, l => __LINE__ };
print_tables("UHC", \@mapping); print_conversion_tables($this_script, "UHC", \@mapping);
...@@ -16,7 +16,9 @@ ...@@ -16,7 +16,9 @@
# # and Unicode name (not used in this script) # # and Unicode name (not used in this script)
use strict; use strict;
require convutils; use convutils;
my $this_script = $0;
my %filename = ( my %filename = (
'WIN866' => 'CP866.TXT', 'WIN866' => 'CP866.TXT',
...@@ -54,5 +56,5 @@ foreach my $charset (@charsets) ...@@ -54,5 +56,5 @@ foreach my $charset (@charsets)
{ {
my $mapping = &read_source($filename{$charset}); my $mapping = &read_source($filename{$charset});
print_tables($charset, $mapping); print_conversion_tables($this_script, $charset, $mapping);
} }
This diff is collapsed.
/* src/backend/utils/mb/Unicode/euc_jis_2004_to_utf8_combined.map */
static const pg_local_to_utf_combined LUmapEUC_JIS_2004_combined[ 25 ] = { /* */
{0xa4f7, 0x00e3818b, 0x00e3829a}, /* U+304B+309A [2000] */
{0xa4f8, 0x00e3818d, 0x00e3829a}, /* U+304D+309A [2000] */
{0xa4f9, 0x00e3818f, 0x00e3829a}, /* U+304F+309A [2000] */
{0xa4fa, 0x00e38191, 0x00e3829a}, /* U+3051+309A [2000] */
{0xa4fb, 0x00e38193, 0x00e3829a}, /* U+3053+309A [2000] */
{0xa5f7, 0x00e382ab, 0x00e3829a}, /* U+30AB+309A [2000] */
{0xa5f8, 0x00e382ad, 0x00e3829a}, /* U+30AD+309A [2000] */
{0xa5f9, 0x00e382af, 0x00e3829a}, /* U+30AF+309A [2000] */
{0xa5fa, 0x00e382b1, 0x00e3829a}, /* U+30B1+309A [2000] */
{0xa5fb, 0x00e382b3, 0x00e3829a}, /* U+30B3+309A [2000] */
{0xa5fc, 0x00e382bb, 0x00e3829a}, /* U+30BB+309A [2000] */
{0xa5fd, 0x00e38384, 0x00e3829a}, /* U+30C4+309A [2000] */
{0xa5fe, 0x00e38388, 0x00e3829a}, /* U+30C8+309A [2000] */
{0xa6f8, 0x00e387b7, 0x00e3829a}, /* U+31F7+309A [2000] */
{0xabc4, 0x0000c3a6, 0x0000cc80}, /* U+00E6+0300 [2000] */
{0xabc8, 0x0000c994, 0x0000cc80}, /* U+0254+0300 [2000] */
{0xabc9, 0x0000c994, 0x0000cc81}, /* U+0254+0301 [2000] */
{0xabca, 0x0000ca8c, 0x0000cc80}, /* U+028C+0300 [2000] */
{0xabcb, 0x0000ca8c, 0x0000cc81}, /* U+028C+0301 [2000] */
{0xabcc, 0x0000c999, 0x0000cc80}, /* U+0259+0300 [2000] */
{0xabcd, 0x0000c999, 0x0000cc81}, /* U+0259+0301 [2000] */
{0xabce, 0x0000c99a, 0x0000cc80}, /* U+025A+0300 [2000] */
{0xabcf, 0x0000c99a, 0x0000cc81}, /* U+025A+0301 [2000] */
{0xabe5, 0x0000cba9, 0x0000cba5}, /* U+02E9+02E5 [2000] */
{0xabe6, 0x0000cba5, 0x0000cba9} /* U+02E5+02E9 [2000] */
};
/* src/backend/utils/mb/Unicode/iso8859_10_to_utf8.map */ /* src/backend/utils/mb/Unicode/iso8859_10_to_utf8.map */
/* This file is generated by UCS_to_most.pl */
static const pg_local_to_utf LUmapISO8859_10[ 128 ] = { static const uint32 iso8859_10_to_unicode_tree_table[];
{0x0080, 0xc280},
{0x0081, 0xc281}, static const pg_mb_radix_tree iso8859_10_to_unicode_tree =
{0x0082, 0xc282}, {
{0x0083, 0xc283}, NULL, /* 16-bit table not used */
{0x0084, 0xc284}, iso8859_10_to_unicode_tree_table,
{0x0085, 0xc285},
{0x0086, 0xc286}, 0x0080, /* offset of table for 1-byte inputs */
{0x0087, 0xc287}, 0x80, /* b1_lower */
{0x0088, 0xc288}, 0xff, /* b1_upper */
{0x0089, 0xc289},
{0x008a, 0xc28a}, 0x0000, /* offset of table for 2-byte inputs */
{0x008b, 0xc28b}, 0x00, /* b2_1_lower */
{0x008c, 0xc28c}, 0x00, /* b2_1_upper */
{0x008d, 0xc28d}, 0x00, /* b2_2_lower */
{0x008e, 0xc28e}, 0x00, /* b2_2_upper */
{0x008f, 0xc28f},
{0x0090, 0xc290}, 0x0000, /* offset of table for 3-byte inputs */
{0x0091, 0xc291}, 0x00, /* b3_1_lower */
{0x0092, 0xc292}, 0x00, /* b3_1_upper */
{0x0093, 0xc293}, 0x00, /* b3_2_lower */
{0x0094, 0xc294}, 0x00, /* b3_2_upper */
{0x0095, 0xc295}, 0x00, /* b3_3_lower */
{0x0096, 0xc296}, 0x00, /* b3_3_upper */
{0x0097, 0xc297},
{0x0098, 0xc298}, 0x0000, /* offset of table for 3-byte inputs */
{0x0099, 0xc299}, 0x00, /* b4_1_lower */
{0x009a, 0xc29a}, 0x00, /* b4_1_upper */
{0x009b, 0xc29b}, 0x00, /* b4_2_lower */
{0x009c, 0xc29c}, 0x00, /* b4_2_upper */
{0x009d, 0xc29d}, 0x00, /* b4_3_lower */
{0x009e, 0xc29e}, 0x00, /* b4_3_upper */
{0x009f, 0xc29f}, 0x00, /* b4_4_lower */
{0x00a0, 0xc2a0}, 0x00 /* b4_4_upper */
{0x00a1, 0xc484}, };
{0x00a2, 0xc492},
{0x00a3, 0xc4a2}, static const uint32 iso8859_10_to_unicode_tree_table[256] =
{0x00a4, 0xc4aa}, {
{0x00a5, 0xc4a8}, /*** Dummy map, for invalid values - offset 0x00000 ***/
{0x00a6, 0xc4b6},
{0x00a7, 0xc2a7}, /* 00 */ 0x000000, 0x000000, 0x000000, 0x000000,
{0x00a8, 0xc4bb}, /* 04 */ 0x000000, 0x000000, 0x000000, 0x000000,
{0x00a9, 0xc490}, /* 08 */ 0x000000, 0x000000, 0x000000, 0x000000,
{0x00aa, 0xc5a0}, /* 0c */ 0x000000, 0x000000, 0x000000, 0x000000,
{0x00ab, 0xc5a6}, /* 10 */ 0x000000, 0x000000, 0x000000, 0x000000,
{0x00ac, 0xc5bd}, /* 14 */ 0x000000, 0x000000, 0x000000, 0x000000,
{0x00ad, 0xc2ad}, /* 18 */ 0x000000, 0x000000, 0x000000, 0x000000,
{0x00ae, 0xc5aa}, /* 1c */ 0x000000, 0x000000, 0x000000, 0x000000,
{0x00af, 0xc58a}, /* 20 */ 0x000000, 0x000000, 0x000000, 0x000000,
{0x00b0, 0xc2b0}, /* 24 */ 0x000000, 0x000000, 0x000000, 0x000000,
{0x00b1, 0xc485}, /* 28 */ 0x000000, 0x000000, 0x000000, 0x000000,
{0x00b2, 0xc493}, /* 2c */ 0x000000, 0x000000, 0x000000, 0x000000,
{0x00b3, 0xc4a3}, /* 30 */ 0x000000, 0x000000, 0x000000, 0x000000,
{0x00b4, 0xc4ab}, /* 34 */ 0x000000, 0x000000, 0x000000, 0x000000,
{0x00b5, 0xc4a9}, /* 38 */ 0x000000, 0x000000, 0x000000, 0x000000,
{0x00b6, 0xc4b7}, /* 3c */ 0x000000, 0x000000, 0x000000, 0x000000,
{0x00b7, 0xc2b7}, /* 40 */ 0x000000, 0x000000, 0x000000, 0x000000,
{0x00b8, 0xc4bc}, /* 44 */ 0x000000, 0x000000, 0x000000, 0x000000,
{0x00b9, 0xc491}, /* 48 */ 0x000000, 0x000000, 0x000000, 0x000000,
{0x00ba, 0xc5a1}, /* 4c */ 0x000000, 0x000000, 0x000000, 0x000000,
{0x00bb, 0xc5a7}, /* 50 */ 0x000000, 0x000000, 0x000000, 0x000000,
{0x00bc, 0xc5be}, /* 54 */ 0x000000, 0x000000, 0x000000, 0x000000,
{0x00bd, 0xe28095}, /* 58 */ 0x000000, 0x000000, 0x000000, 0x000000,
{0x00be, 0xc5ab}, /* 5c */ 0x000000, 0x000000, 0x000000, 0x000000,
{0x00bf, 0xc58b}, /* 60 */ 0x000000, 0x000000, 0x000000, 0x000000,
{0x00c0, 0xc480}, /* 64 */ 0x000000, 0x000000, 0x000000, 0x000000,
{0x00c1, 0xc381}, /* 68 */ 0x000000, 0x000000, 0x000000, 0x000000,
{0x00c2, 0xc382}, /* 6c */ 0x000000, 0x000000, 0x000000, 0x000000,
{0x00c3, 0xc383}, /* 70 */ 0x000000, 0x000000, 0x000000, 0x000000,
{0x00c4, 0xc384}, /* 74 */ 0x000000, 0x000000, 0x000000, 0x000000,
{0x00c5, 0xc385}, /* 78 */ 0x000000, 0x000000, 0x000000, 0x000000,
{0x00c6, 0xc386}, /* 7c */ 0x000000, 0x000000, 0x000000, 0x000000,
{0x00c7, 0xc4ae},
{0x00c8, 0xc48c}, /*** Single byte table, leaf: xx - offset 0x00080 ***/
{0x00c9, 0xc389},
{0x00ca, 0xc498}, /* 80 */ 0x00c280, 0x00c281, 0x00c282, 0x00c283,
{0x00cb, 0xc38b}, /* 84 */ 0x00c284, 0x00c285, 0x00c286, 0x00c287,
{0x00cc, 0xc496}, /* 88 */ 0x00c288, 0x00c289, 0x00c28a, 0x00c28b,
{0x00cd, 0xc38d}, /* 8c */ 0x00c28c, 0x00c28d, 0x00c28e, 0x00c28f,
{0x00ce, 0xc38e}, /* 90 */ 0x00c290, 0x00c291, 0x00c292, 0x00c293,
{0x00cf, 0xc38f}, /* 94 */ 0x00c294, 0x00c295, 0x00c296, 0x00c297,
{0x00d0, 0xc390}, /* 98 */ 0x00c298, 0x00c299, 0x00c29a, 0x00c29b,
{0x00d1, 0xc585}, /* 9c */ 0x00c29c, 0x00c29d, 0x00c29e, 0x00c29f,
{0x00d2, 0xc58c}, /* a0 */ 0x00c2a0, 0x00c484, 0x00c492, 0x00c4a2,
{0x00d3, 0xc393}, /* a4 */ 0x00c4aa, 0x00c4a8, 0x00c4b6, 0x00c2a7,
{0x00d4, 0xc394}, /* a8 */ 0x00c4bb, 0x00c490, 0x00c5a0, 0x00c5a6,
{0x00d5, 0xc395}, /* ac */ 0x00c5bd, 0x00c2ad, 0x00c5aa, 0x00c58a,
{0x00d6, 0xc396}, /* b0 */ 0x00c2b0, 0x00c485, 0x00c493, 0x00c4a3,
{0x00d7, 0xc5a8}, /* b4 */ 0x00c4ab, 0x00c4a9, 0x00c4b7, 0x00c2b7,
{0x00d8, 0xc398}, /* b8 */ 0x00c4bc, 0x00c491, 0x00c5a1, 0x00c5a7,
{0x00d9, 0xc5b2}, /* bc */ 0x00c5be, 0xe28095, 0x00c5ab, 0x00c58b,
{0x00da, 0xc39a}, /* c0 */ 0x00c480, 0x00c381, 0x00c382, 0x00c383,
{0x00db, 0xc39b}, /* c4 */ 0x00c384, 0x00c385, 0x00c386, 0x00c4ae,
{0x00dc, 0xc39c}, /* c8 */ 0x00c48c, 0x00c389, 0x00c498, 0x00c38b,
{0x00dd, 0xc39d}, /* cc */ 0x00c496, 0x00c38d, 0x00c38e, 0x00c38f,
{0x00de, 0xc39e}, /* d0 */ 0x00c390, 0x00c585, 0x00c58c, 0x00c393,
{0x00df, 0xc39f}, /* d4 */ 0x00c394, 0x00c395, 0x00c396, 0x00c5a8,
{0x00e0, 0xc481}, /* d8 */ 0x00c398, 0x00c5b2, 0x00c39a, 0x00c39b,
{0x00e1, 0xc3a1}, /* dc */ 0x00c39c, 0x00c39d, 0x00c39e, 0x00c39f,
{0x00e2, 0xc3a2}, /* e0 */ 0x00c481, 0x00c3a1, 0x00c3a2, 0x00c3a3,
{0x00e3, 0xc3a3}, /* e4 */ 0x00c3a4, 0x00c3a5, 0x00c3a6, 0x00c4af,
{0x00e4, 0xc3a4}, /* e8 */ 0x00c48d, 0x00c3a9, 0x00c499, 0x00c3ab,
{0x00e5, 0xc3a5}, /* ec */ 0x00c497, 0x00c3ad, 0x00c3ae, 0x00c3af,
{0x00e6, 0xc3a6}, /* f0 */ 0x00c3b0, 0x00c586, 0x00c58d, 0x00c3b3,
{0x00e7, 0xc4af}, /* f4 */ 0x00c3b4, 0x00c3b5, 0x00c3b6, 0x00c5a9,
{0x00e8, 0xc48d}, /* f8 */ 0x00c3b8, 0x00c5b3, 0x00c3ba, 0x00c3bb,
{0x00e9, 0xc3a9}, /* fc */ 0x00c3bc, 0x00c3bd, 0x00c3be, 0x00c4b8
{0x00ea, 0xc499},
{0x00eb, 0xc3ab},
{0x00ec, 0xc497},
{0x00ed, 0xc3ad},
{0x00ee, 0xc3ae},
{0x00ef, 0xc3af},
{0x00f0, 0xc3b0},
{0x00f1, 0xc586},
{0x00f2, 0xc58d},
{0x00f3, 0xc3b3},
{0x00f4, 0xc3b4},
{0x00f5, 0xc3b5},
{0x00f6, 0xc3b6},
{0x00f7, 0xc5a9},
{0x00f8, 0xc3b8},
{0x00f9, 0xc5b3},
{0x00fa, 0xc3ba},
{0x00fb, 0xc3bb},
{0x00fc, 0xc3bc},
{0x00fd, 0xc3bd},
{0x00fe, 0xc3be},
{0x00ff, 0xc4b8}
}; };
/* src/backend/utils/mb/Unicode/iso8859_13_to_utf8.map */ /* src/backend/utils/mb/Unicode/iso8859_13_to_utf8.map */
/* This file is generated by UCS_to_most.pl */
static const pg_local_to_utf LUmapISO8859_13[ 128 ] = { static const uint32 iso8859_13_to_unicode_tree_table[];
{0x0080, 0xc280},
{0x0081, 0xc281}, static const pg_mb_radix_tree iso8859_13_to_unicode_tree =
{0x0082, 0xc282}, {
{0x0083, 0xc283}, NULL, /* 16-bit table not used */
{0x0084, 0xc284}, iso8859_13_to_unicode_tree_table,
{0x0085, 0xc285},
{0x0086, 0xc286}, 0x0080, /* offset of table for 1-byte inputs */
{0x0087, 0xc287}, 0x80, /* b1_lower */
{0x0088, 0xc288}, 0xff, /* b1_upper */
{0x0089, 0xc289},
{0x008a, 0xc28a}, 0x0000, /* offset of table for 2-byte inputs */
{0x008b, 0xc28b}, 0x00, /* b2_1_lower */
{0x008c, 0xc28c}, 0x00, /* b2_1_upper */
{0x008d, 0xc28d}, 0x00, /* b2_2_lower */
{0x008e, 0xc28e}, 0x00, /* b2_2_upper */
{0x008f, 0xc28f},
{0x0090, 0xc290}, 0x0000, /* offset of table for 3-byte inputs */
{0x0091, 0xc291}, 0x00, /* b3_1_lower */
{0x0092, 0xc292}, 0x00, /* b3_1_upper */
{0x0093, 0xc293}, 0x00, /* b3_2_lower */
{0x0094, 0xc294}, 0x00, /* b3_2_upper */
{0x0095, 0xc295}, 0x00, /* b3_3_lower */
{0x0096, 0xc296}, 0x00, /* b3_3_upper */
{0x0097, 0xc297},
{0x0098, 0xc298}, 0x0000, /* offset of table for 3-byte inputs */
{0x0099, 0xc299}, 0x00, /* b4_1_lower */
{0x009a, 0xc29a}, 0x00, /* b4_1_upper */
{0x009b, 0xc29b}, 0x00, /* b4_2_lower */
{0x009c, 0xc29c}, 0x00, /* b4_2_upper */
{0x009d, 0xc29d}, 0x00, /* b4_3_lower */
{0x009e, 0xc29e}, 0x00, /* b4_3_upper */
{0x009f, 0xc29f}, 0x00, /* b4_4_lower */
{0x00a0, 0xc2a0}, 0x00 /* b4_4_upper */
{0x00a1, 0xe2809d}, };
{0x00a2, 0xc2a2},
{0x00a3, 0xc2a3}, static const uint32 iso8859_13_to_unicode_tree_table[256] =
{0x00a4, 0xc2a4}, {
{0x00a5, 0xe2809e}, /*** Dummy map, for invalid values - offset 0x00000 ***/
{0x00a6, 0xc2a6},
{0x00a7, 0xc2a7}, /* 00 */ 0x000000, 0x000000, 0x000000, 0x000000,
{0x00a8, 0xc398}, /* 04 */ 0x000000, 0x000000, 0x000000, 0x000000,
{0x00a9, 0xc2a9}, /* 08 */ 0x000000, 0x000000, 0x000000, 0x000000,
{0x00aa, 0xc596}, /* 0c */ 0x000000, 0x000000, 0x000000, 0x000000,
{0x00ab, 0xc2ab}, /* 10 */ 0x000000, 0x000000, 0x000000, 0x000000,
{0x00ac, 0xc2ac}, /* 14 */ 0x000000, 0x000000, 0x000000, 0x000000,
{0x00ad, 0xc2ad}, /* 18 */ 0x000000, 0x000000, 0x000000, 0x000000,
{0x00ae, 0xc2ae}, /* 1c */ 0x000000, 0x000000, 0x000000, 0x000000,
{0x00af, 0xc386}, /* 20 */ 0x000000, 0x000000, 0x000000, 0x000000,
{0x00b0, 0xc2b0}, /* 24 */ 0x000000, 0x000000, 0x000000, 0x000000,
{0x00b1, 0xc2b1}, /* 28 */ 0x000000, 0x000000, 0x000000, 0x000000,
{0x00b2, 0xc2b2}, /* 2c */ 0x000000, 0x000000, 0x000000, 0x000000,
{0x00b3, 0xc2b3}, /* 30 */ 0x000000, 0x000000, 0x000000, 0x000000,
{0x00b4, 0xe2809c}, /* 34 */ 0x000000, 0x000000, 0x000000, 0x000000,
{0x00b5, 0xc2b5}, /* 38 */ 0x000000, 0x000000, 0x000000, 0x000000,
{0x00b6, 0xc2b6}, /* 3c */ 0x000000, 0x000000, 0x000000, 0x000000,
{0x00b7, 0xc2b7}, /* 40 */ 0x000000, 0x000000, 0x000000, 0x000000,
{0x00b8, 0xc3b8}, /* 44 */ 0x000000, 0x000000, 0x000000, 0x000000,
{0x00b9, 0xc2b9}, /* 48 */ 0x000000, 0x000000, 0x000000, 0x000000,
{0x00ba, 0xc597}, /* 4c */ 0x000000, 0x000000, 0x000000, 0x000000,
{0x00bb, 0xc2bb}, /* 50 */ 0x000000, 0x000000, 0x000000, 0x000000,
{0x00bc, 0xc2bc}, /* 54 */ 0x000000, 0x000000, 0x000000, 0x000000,
{0x00bd, 0xc2bd}, /* 58 */ 0x000000, 0x000000, 0x000000, 0x000000,
{0x00be, 0xc2be}, /* 5c */ 0x000000, 0x000000, 0x000000, 0x000000,
{0x00bf, 0xc3a6}, /* 60 */ 0x000000, 0x000000, 0x000000, 0x000000,
{0x00c0, 0xc484}, /* 64 */ 0x000000, 0x000000, 0x000000, 0x000000,
{0x00c1, 0xc4ae}, /* 68 */ 0x000000, 0x000000, 0x000000, 0x000000,
{0x00c2, 0xc480}, /* 6c */ 0x000000, 0x000000, 0x000000, 0x000000,
{0x00c3, 0xc486}, /* 70 */ 0x000000, 0x000000, 0x000000, 0x000000,
{0x00c4, 0xc384}, /* 74 */ 0x000000, 0x000000, 0x000000, 0x000000,
{0x00c5, 0xc385}, /* 78 */ 0x000000, 0x000000, 0x000000, 0x000000,
{0x00c6, 0xc498}, /* 7c */ 0x000000, 0x000000, 0x000000, 0x000000,
{0x00c7, 0xc492},
{0x00c8, 0xc48c}, /*** Single byte table, leaf: xx - offset 0x00080 ***/
{0x00c9, 0xc389},
{0x00ca, 0xc5b9}, /* 80 */ 0x00c280, 0x00c281, 0x00c282, 0x00c283,
{0x00cb, 0xc496}, /* 84 */ 0x00c284, 0x00c285, 0x00c286, 0x00c287,
{0x00cc, 0xc4a2}, /* 88 */ 0x00c288, 0x00c289, 0x00c28a, 0x00c28b,
{0x00cd, 0xc4b6}, /* 8c */ 0x00c28c, 0x00c28d, 0x00c28e, 0x00c28f,
{0x00ce, 0xc4aa}, /* 90 */ 0x00c290, 0x00c291, 0x00c292, 0x00c293,
{0x00cf, 0xc4bb}, /* 94 */ 0x00c294, 0x00c295, 0x00c296, 0x00c297,
{0x00d0, 0xc5a0}, /* 98 */ 0x00c298, 0x00c299, 0x00c29a, 0x00c29b,
{0x00d1, 0xc583}, /* 9c */ 0x00c29c, 0x00c29d, 0x00c29e, 0x00c29f,
{0x00d2, 0xc585}, /* a0 */ 0x00c2a0, 0xe2809d, 0x00c2a2, 0x00c2a3,
{0x00d3, 0xc393}, /* a4 */ 0x00c2a4, 0xe2809e, 0x00c2a6, 0x00c2a7,
{0x00d4, 0xc58c}, /* a8 */ 0x00c398, 0x00c2a9, 0x00c596, 0x00c2ab,
{0x00d5, 0xc395}, /* ac */ 0x00c2ac, 0x00c2ad, 0x00c2ae, 0x00c386,
{0x00d6, 0xc396}, /* b0 */ 0x00c2b0, 0x00c2b1, 0x00c2b2, 0x00c2b3,
{0x00d7, 0xc397}, /* b4 */ 0xe2809c, 0x00c2b5, 0x00c2b6, 0x00c2b7,
{0x00d8, 0xc5b2}, /* b8 */ 0x00c3b8, 0x00c2b9, 0x00c597, 0x00c2bb,
{0x00d9, 0xc581}, /* bc */ 0x00c2bc, 0x00c2bd, 0x00c2be, 0x00c3a6,
{0x00da, 0xc59a}, /* c0 */ 0x00c484, 0x00c4ae, 0x00c480, 0x00c486,
{0x00db, 0xc5aa}, /* c4 */ 0x00c384, 0x00c385, 0x00c498, 0x00c492,
{0x00dc, 0xc39c}, /* c8 */ 0x00c48c, 0x00c389, 0x00c5b9, 0x00c496,
{0x00dd, 0xc5bb}, /* cc */ 0x00c4a2, 0x00c4b6, 0x00c4aa, 0x00c4bb,
{0x00de, 0xc5bd}, /* d0 */ 0x00c5a0, 0x00c583, 0x00c585, 0x00c393,
{0x00df, 0xc39f}, /* d4 */ 0x00c58c, 0x00c395, 0x00c396, 0x00c397,
{0x00e0, 0xc485}, /* d8 */ 0x00c5b2, 0x00c581, 0x00c59a, 0x00c5aa,
{0x00e1, 0xc4af}, /* dc */ 0x00c39c, 0x00c5bb, 0x00c5bd, 0x00c39f,
{0x00e2, 0xc481}, /* e0 */ 0x00c485, 0x00c4af, 0x00c481, 0x00c487,
{0x00e3, 0xc487}, /* e4 */ 0x00c3a4, 0x00c3a5, 0x00c499, 0x00c493,
{0x00e4, 0xc3a4}, /* e8 */ 0x00c48d, 0x00c3a9, 0x00c5ba, 0x00c497,
{0x00e5, 0xc3a5}, /* ec */ 0x00c4a3, 0x00c4b7, 0x00c4ab, 0x00c4bc,
{0x00e6, 0xc499}, /* f0 */ 0x00c5a1, 0x00c584, 0x00c586, 0x00c3b3,
{0x00e7, 0xc493}, /* f4 */ 0x00c58d, 0x00c3b5, 0x00c3b6, 0x00c3b7,
{0x00e8, 0xc48d}, /* f8 */ 0x00c5b3, 0x00c582, 0x00c59b, 0x00c5ab,
{0x00e9, 0xc3a9}, /* fc */ 0x00c3bc, 0x00c5bc, 0x00c5be, 0xe28099
{0x00ea, 0xc5ba},
{0x00eb, 0xc497},
{0x00ec, 0xc4a3},
{0x00ed, 0xc4b7},
{0x00ee, 0xc4ab},
{0x00ef, 0xc4bc},
{0x00f0, 0xc5a1},
{0x00f1, 0xc584},
{0x00f2, 0xc586},
{0x00f3, 0xc3b3},
{0x00f4, 0xc58d},
{0x00f5, 0xc3b5},
{0x00f6, 0xc3b6},
{0x00f7, 0xc3b7},
{0x00f8, 0xc5b3},
{0x00f9, 0xc582},
{0x00fa, 0xc59b},
{0x00fb, 0xc5ab},
{0x00fc, 0xc3bc},
{0x00fd, 0xc5bc},
{0x00fe, 0xc5be},
{0x00ff, 0xe28099}
}; };
/* src/backend/utils/mb/Unicode/iso8859_14_to_utf8.map */ /* src/backend/utils/mb/Unicode/iso8859_14_to_utf8.map */
/* This file is generated by UCS_to_most.pl */
static const pg_local_to_utf LUmapISO8859_14[ 128 ] = { static const uint32 iso8859_14_to_unicode_tree_table[];
{0x0080, 0xc280},
{0x0081, 0xc281}, static const pg_mb_radix_tree iso8859_14_to_unicode_tree =
{0x0082, 0xc282}, {
{0x0083, 0xc283}, NULL, /* 16-bit table not used */
{0x0084, 0xc284}, iso8859_14_to_unicode_tree_table,
{0x0085, 0xc285},
{0x0086, 0xc286}, 0x0080, /* offset of table for 1-byte inputs */
{0x0087, 0xc287}, 0x80, /* b1_lower */
{0x0088, 0xc288}, 0xff, /* b1_upper */
{0x0089, 0xc289},
{0x008a, 0xc28a}, 0x0000, /* offset of table for 2-byte inputs */
{0x008b, 0xc28b}, 0x00, /* b2_1_lower */
{0x008c, 0xc28c}, 0x00, /* b2_1_upper */
{0x008d, 0xc28d}, 0x00, /* b2_2_lower */
{0x008e, 0xc28e}, 0x00, /* b2_2_upper */
{0x008f, 0xc28f},
{0x0090, 0xc290}, 0x0000, /* offset of table for 3-byte inputs */
{0x0091, 0xc291}, 0x00, /* b3_1_lower */
{0x0092, 0xc292}, 0x00, /* b3_1_upper */
{0x0093, 0xc293}, 0x00, /* b3_2_lower */
{0x0094, 0xc294}, 0x00, /* b3_2_upper */
{0x0095, 0xc295}, 0x00, /* b3_3_lower */
{0x0096, 0xc296}, 0x00, /* b3_3_upper */
{0x0097, 0xc297},
{0x0098, 0xc298}, 0x0000, /* offset of table for 3-byte inputs */
{0x0099, 0xc299}, 0x00, /* b4_1_lower */
{0x009a, 0xc29a}, 0x00, /* b4_1_upper */
{0x009b, 0xc29b}, 0x00, /* b4_2_lower */
{0x009c, 0xc29c}, 0x00, /* b4_2_upper */
{0x009d, 0xc29d}, 0x00, /* b4_3_lower */
{0x009e, 0xc29e}, 0x00, /* b4_3_upper */
{0x009f, 0xc29f}, 0x00, /* b4_4_lower */
{0x00a0, 0xc2a0}, 0x00 /* b4_4_upper */
{0x00a1, 0xe1b882}, };
{0x00a2, 0xe1b883},
{0x00a3, 0xc2a3}, static const uint32 iso8859_14_to_unicode_tree_table[256] =
{0x00a4, 0xc48a}, {
{0x00a5, 0xc48b}, /*** Dummy map, for invalid values - offset 0x00000 ***/
{0x00a6, 0xe1b88a},
{0x00a7, 0xc2a7}, /* 00 */ 0x000000, 0x000000, 0x000000, 0x000000,
{0x00a8, 0xe1ba80}, /* 04 */ 0x000000, 0x000000, 0x000000, 0x000000,
{0x00a9, 0xc2a9}, /* 08 */ 0x000000, 0x000000, 0x000000, 0x000000,
{0x00aa, 0xe1ba82}, /* 0c */ 0x000000, 0x000000, 0x000000, 0x000000,
{0x00ab, 0xe1b88b}, /* 10 */ 0x000000, 0x000000, 0x000000, 0x000000,
{0x00ac, 0xe1bbb2}, /* 14 */ 0x000000, 0x000000, 0x000000, 0x000000,
{0x00ad, 0xc2ad}, /* 18 */ 0x000000, 0x000000, 0x000000, 0x000000,
{0x00ae, 0xc2ae}, /* 1c */ 0x000000, 0x000000, 0x000000, 0x000000,
{0x00af, 0xc5b8}, /* 20 */ 0x000000, 0x000000, 0x000000, 0x000000,
{0x00b0, 0xe1b89e}, /* 24 */ 0x000000, 0x000000, 0x000000, 0x000000,
{0x00b1, 0xe1b89f}, /* 28 */ 0x000000, 0x000000, 0x000000, 0x000000,
{0x00b2, 0xc4a0}, /* 2c */ 0x000000, 0x000000, 0x000000, 0x000000,
{0x00b3, 0xc4a1}, /* 30 */ 0x000000, 0x000000, 0x000000, 0x000000,
{0x00b4, 0xe1b980}, /* 34 */ 0x000000, 0x000000, 0x000000, 0x000000,
{0x00b5, 0xe1b981}, /* 38 */ 0x000000, 0x000000, 0x000000, 0x000000,
{0x00b6, 0xc2b6}, /* 3c */ 0x000000, 0x000000, 0x000000, 0x000000,
{0x00b7, 0xe1b996}, /* 40 */ 0x000000, 0x000000, 0x000000, 0x000000,
{0x00b8, 0xe1ba81}, /* 44 */ 0x000000, 0x000000, 0x000000, 0x000000,
{0x00b9, 0xe1b997}, /* 48 */ 0x000000, 0x000000, 0x000000, 0x000000,
{0x00ba, 0xe1ba83}, /* 4c */ 0x000000, 0x000000, 0x000000, 0x000000,
{0x00bb, 0xe1b9a0}, /* 50 */ 0x000000, 0x000000, 0x000000, 0x000000,
{0x00bc, 0xe1bbb3}, /* 54 */ 0x000000, 0x000000, 0x000000, 0x000000,
{0x00bd, 0xe1ba84}, /* 58 */ 0x000000, 0x000000, 0x000000, 0x000000,
{0x00be, 0xe1ba85}, /* 5c */ 0x000000, 0x000000, 0x000000, 0x000000,
{0x00bf, 0xe1b9a1}, /* 60 */ 0x000000, 0x000000, 0x000000, 0x000000,
{0x00c0, 0xc380}, /* 64 */ 0x000000, 0x000000, 0x000000, 0x000000,
{0x00c1, 0xc381}, /* 68 */ 0x000000, 0x000000, 0x000000, 0x000000,
{0x00c2, 0xc382}, /* 6c */ 0x000000, 0x000000, 0x000000, 0x000000,
{0x00c3, 0xc383}, /* 70 */ 0x000000, 0x000000, 0x000000, 0x000000,
{0x00c4, 0xc384}, /* 74 */ 0x000000, 0x000000, 0x000000, 0x000000,
{0x00c5, 0xc385}, /* 78 */ 0x000000, 0x000000, 0x000000, 0x000000,
{0x00c6, 0xc386}, /* 7c */ 0x000000, 0x000000, 0x000000, 0x000000,
{0x00c7, 0xc387},
{0x00c8, 0xc388}, /*** Single byte table, leaf: xx - offset 0x00080 ***/
{0x00c9, 0xc389},
{0x00ca, 0xc38a}, /* 80 */ 0x00c280, 0x00c281, 0x00c282, 0x00c283,
{0x00cb, 0xc38b}, /* 84 */ 0x00c284, 0x00c285, 0x00c286, 0x00c287,
{0x00cc, 0xc38c}, /* 88 */ 0x00c288, 0x00c289, 0x00c28a, 0x00c28b,
{0x00cd, 0xc38d}, /* 8c */ 0x00c28c, 0x00c28d, 0x00c28e, 0x00c28f,
{0x00ce, 0xc38e}, /* 90 */ 0x00c290, 0x00c291, 0x00c292, 0x00c293,
{0x00cf, 0xc38f}, /* 94 */ 0x00c294, 0x00c295, 0x00c296, 0x00c297,
{0x00d0, 0xc5b4}, /* 98 */ 0x00c298, 0x00c299, 0x00c29a, 0x00c29b,
{0x00d1, 0xc391}, /* 9c */ 0x00c29c, 0x00c29d, 0x00c29e, 0x00c29f,
{0x00d2, 0xc392}, /* a0 */ 0x00c2a0, 0xe1b882, 0xe1b883, 0x00c2a3,
{0x00d3, 0xc393}, /* a4 */ 0x00c48a, 0x00c48b, 0xe1b88a, 0x00c2a7,
{0x00d4, 0xc394}, /* a8 */ 0xe1ba80, 0x00c2a9, 0xe1ba82, 0xe1b88b,
{0x00d5, 0xc395}, /* ac */ 0xe1bbb2, 0x00c2ad, 0x00c2ae, 0x00c5b8,
{0x00d6, 0xc396}, /* b0 */ 0xe1b89e, 0xe1b89f, 0x00c4a0, 0x00c4a1,
{0x00d7, 0xe1b9aa}, /* b4 */ 0xe1b980, 0xe1b981, 0x00c2b6, 0xe1b996,
{0x00d8, 0xc398}, /* b8 */ 0xe1ba81, 0xe1b997, 0xe1ba83, 0xe1b9a0,
{0x00d9, 0xc399}, /* bc */ 0xe1bbb3, 0xe1ba84, 0xe1ba85, 0xe1b9a1,
{0x00da, 0xc39a}, /* c0 */ 0x00c380, 0x00c381, 0x00c382, 0x00c383,
{0x00db, 0xc39b}, /* c4 */ 0x00c384, 0x00c385, 0x00c386, 0x00c387,
{0x00dc, 0xc39c}, /* c8 */ 0x00c388, 0x00c389, 0x00c38a, 0x00c38b,
{0x00dd, 0xc39d}, /* cc */ 0x00c38c, 0x00c38d, 0x00c38e, 0x00c38f,
{0x00de, 0xc5b6}, /* d0 */ 0x00c5b4, 0x00c391, 0x00c392, 0x00c393,
{0x00df, 0xc39f}, /* d4 */ 0x00c394, 0x00c395, 0x00c396, 0xe1b9aa,
{0x00e0, 0xc3a0}, /* d8 */ 0x00c398, 0x00c399, 0x00c39a, 0x00c39b,
{0x00e1, 0xc3a1}, /* dc */ 0x00c39c, 0x00c39d, 0x00c5b6, 0x00c39f,
{0x00e2, 0xc3a2}, /* e0 */ 0x00c3a0, 0x00c3a1, 0x00c3a2, 0x00c3a3,
{0x00e3, 0xc3a3}, /* e4 */ 0x00c3a4, 0x00c3a5, 0x00c3a6, 0x00c3a7,
{0x00e4, 0xc3a4}, /* e8 */ 0x00c3a8, 0x00c3a9, 0x00c3aa, 0x00c3ab,
{0x00e5, 0xc3a5}, /* ec */ 0x00c3ac, 0x00c3ad, 0x00c3ae, 0x00c3af,
{0x00e6, 0xc3a6}, /* f0 */ 0x00c5b5, 0x00c3b1, 0x00c3b2, 0x00c3b3,
{0x00e7, 0xc3a7}, /* f4 */ 0x00c3b4, 0x00c3b5, 0x00c3b6, 0xe1b9ab,
{0x00e8, 0xc3a8}, /* f8 */ 0x00c3b8, 0x00c3b9, 0x00c3ba, 0x00c3bb,
{0x00e9, 0xc3a9}, /* fc */ 0x00c3bc, 0x00c3bd, 0x00c5b7, 0x00c3bf
{0x00ea, 0xc3aa},
{0x00eb, 0xc3ab},
{0x00ec, 0xc3ac},
{0x00ed, 0xc3ad},
{0x00ee, 0xc3ae},
{0x00ef, 0xc3af},
{0x00f0, 0xc5b5},
{0x00f1, 0xc3b1},
{0x00f2, 0xc3b2},
{0x00f3, 0xc3b3},
{0x00f4, 0xc3b4},
{0x00f5, 0xc3b5},
{0x00f6, 0xc3b6},
{0x00f7, 0xe1b9ab},
{0x00f8, 0xc3b8},
{0x00f9, 0xc3b9},
{0x00fa, 0xc3ba},
{0x00fb, 0xc3bb},
{0x00fc, 0xc3bc},
{0x00fd, 0xc3bd},
{0x00fe, 0xc5b7},
{0x00ff, 0xc3bf}
}; };
/* src/backend/utils/mb/Unicode/iso8859_15_to_utf8.map */ /* src/backend/utils/mb/Unicode/iso8859_15_to_utf8.map */
/* This file is generated by UCS_to_most.pl */
static const pg_local_to_utf LUmapISO8859_15[ 128 ] = { static const uint32 iso8859_15_to_unicode_tree_table[];
{0x0080, 0xc280},
{0x0081, 0xc281}, static const pg_mb_radix_tree iso8859_15_to_unicode_tree =
{0x0082, 0xc282}, {
{0x0083, 0xc283}, NULL, /* 16-bit table not used */
{0x0084, 0xc284}, iso8859_15_to_unicode_tree_table,
{0x0085, 0xc285},
{0x0086, 0xc286}, 0x0080, /* offset of table for 1-byte inputs */
{0x0087, 0xc287}, 0x80, /* b1_lower */
{0x0088, 0xc288}, 0xff, /* b1_upper */
{0x0089, 0xc289},
{0x008a, 0xc28a}, 0x0000, /* offset of table for 2-byte inputs */
{0x008b, 0xc28b}, 0x00, /* b2_1_lower */
{0x008c, 0xc28c}, 0x00, /* b2_1_upper */
{0x008d, 0xc28d}, 0x00, /* b2_2_lower */
{0x008e, 0xc28e}, 0x00, /* b2_2_upper */
{0x008f, 0xc28f},
{0x0090, 0xc290}, 0x0000, /* offset of table for 3-byte inputs */
{0x0091, 0xc291}, 0x00, /* b3_1_lower */
{0x0092, 0xc292}, 0x00, /* b3_1_upper */
{0x0093, 0xc293}, 0x00, /* b3_2_lower */
{0x0094, 0xc294}, 0x00, /* b3_2_upper */
{0x0095, 0xc295}, 0x00, /* b3_3_lower */
{0x0096, 0xc296}, 0x00, /* b3_3_upper */
{0x0097, 0xc297},
{0x0098, 0xc298}, 0x0000, /* offset of table for 3-byte inputs */
{0x0099, 0xc299}, 0x00, /* b4_1_lower */
{0x009a, 0xc29a}, 0x00, /* b4_1_upper */
{0x009b, 0xc29b}, 0x00, /* b4_2_lower */
{0x009c, 0xc29c}, 0x00, /* b4_2_upper */
{0x009d, 0xc29d}, 0x00, /* b4_3_lower */
{0x009e, 0xc29e}, 0x00, /* b4_3_upper */
{0x009f, 0xc29f}, 0x00, /* b4_4_lower */
{0x00a0, 0xc2a0}, 0x00 /* b4_4_upper */
{0x00a1, 0xc2a1}, };
{0x00a2, 0xc2a2},
{0x00a3, 0xc2a3}, static const uint32 iso8859_15_to_unicode_tree_table[256] =
{0x00a4, 0xe282ac}, {
{0x00a5, 0xc2a5}, /*** Dummy map, for invalid values - offset 0x00000 ***/
{0x00a6, 0xc5a0},
{0x00a7, 0xc2a7}, /* 00 */ 0x000000, 0x000000, 0x000000, 0x000000,
{0x00a8, 0xc5a1}, /* 04 */ 0x000000, 0x000000, 0x000000, 0x000000,
{0x00a9, 0xc2a9}, /* 08 */ 0x000000, 0x000000, 0x000000, 0x000000,
{0x00aa, 0xc2aa}, /* 0c */ 0x000000, 0x000000, 0x000000, 0x000000,
{0x00ab, 0xc2ab}, /* 10 */ 0x000000, 0x000000, 0x000000, 0x000000,
{0x00ac, 0xc2ac}, /* 14 */ 0x000000, 0x000000, 0x000000, 0x000000,
{0x00ad, 0xc2ad}, /* 18 */ 0x000000, 0x000000, 0x000000, 0x000000,
{0x00ae, 0xc2ae}, /* 1c */ 0x000000, 0x000000, 0x000000, 0x000000,
{0x00af, 0xc2af}, /* 20 */ 0x000000, 0x000000, 0x000000, 0x000000,
{0x00b0, 0xc2b0}, /* 24 */ 0x000000, 0x000000, 0x000000, 0x000000,
{0x00b1, 0xc2b1}, /* 28 */ 0x000000, 0x000000, 0x000000, 0x000000,
{0x00b2, 0xc2b2}, /* 2c */ 0x000000, 0x000000, 0x000000, 0x000000,
{0x00b3, 0xc2b3}, /* 30 */ 0x000000, 0x000000, 0x000000, 0x000000,
{0x00b4, 0xc5bd}, /* 34 */ 0x000000, 0x000000, 0x000000, 0x000000,
{0x00b5, 0xc2b5}, /* 38 */ 0x000000, 0x000000, 0x000000, 0x000000,
{0x00b6, 0xc2b6}, /* 3c */ 0x000000, 0x000000, 0x000000, 0x000000,
{0x00b7, 0xc2b7}, /* 40 */ 0x000000, 0x000000, 0x000000, 0x000000,
{0x00b8, 0xc5be}, /* 44 */ 0x000000, 0x000000, 0x000000, 0x000000,
{0x00b9, 0xc2b9}, /* 48 */ 0x000000, 0x000000, 0x000000, 0x000000,
{0x00ba, 0xc2ba}, /* 4c */ 0x000000, 0x000000, 0x000000, 0x000000,
{0x00bb, 0xc2bb}, /* 50 */ 0x000000, 0x000000, 0x000000, 0x000000,
{0x00bc, 0xc592}, /* 54 */ 0x000000, 0x000000, 0x000000, 0x000000,
{0x00bd, 0xc593}, /* 58 */ 0x000000, 0x000000, 0x000000, 0x000000,
{0x00be, 0xc5b8}, /* 5c */ 0x000000, 0x000000, 0x000000, 0x000000,
{0x00bf, 0xc2bf}, /* 60 */ 0x000000, 0x000000, 0x000000, 0x000000,
{0x00c0, 0xc380}, /* 64 */ 0x000000, 0x000000, 0x000000, 0x000000,
{0x00c1, 0xc381}, /* 68 */ 0x000000, 0x000000, 0x000000, 0x000000,
{0x00c2, 0xc382}, /* 6c */ 0x000000, 0x000000, 0x000000, 0x000000,
{0x00c3, 0xc383}, /* 70 */ 0x000000, 0x000000, 0x000000, 0x000000,
{0x00c4, 0xc384}, /* 74 */ 0x000000, 0x000000, 0x000000, 0x000000,
{0x00c5, 0xc385}, /* 78 */ 0x000000, 0x000000, 0x000000, 0x000000,
{0x00c6, 0xc386}, /* 7c */ 0x000000, 0x000000, 0x000000, 0x000000,
{0x00c7, 0xc387},
{0x00c8, 0xc388}, /*** Single byte table, leaf: xx - offset 0x00080 ***/
{0x00c9, 0xc389},
{0x00ca, 0xc38a}, /* 80 */ 0x00c280, 0x00c281, 0x00c282, 0x00c283,
{0x00cb, 0xc38b}, /* 84 */ 0x00c284, 0x00c285, 0x00c286, 0x00c287,
{0x00cc, 0xc38c}, /* 88 */ 0x00c288, 0x00c289, 0x00c28a, 0x00c28b,
{0x00cd, 0xc38d}, /* 8c */ 0x00c28c, 0x00c28d, 0x00c28e, 0x00c28f,
{0x00ce, 0xc38e}, /* 90 */ 0x00c290, 0x00c291, 0x00c292, 0x00c293,
{0x00cf, 0xc38f}, /* 94 */ 0x00c294, 0x00c295, 0x00c296, 0x00c297,
{0x00d0, 0xc390}, /* 98 */ 0x00c298, 0x00c299, 0x00c29a, 0x00c29b,
{0x00d1, 0xc391}, /* 9c */ 0x00c29c, 0x00c29d, 0x00c29e, 0x00c29f,
{0x00d2, 0xc392}, /* a0 */ 0x00c2a0, 0x00c2a1, 0x00c2a2, 0x00c2a3,
{0x00d3, 0xc393}, /* a4 */ 0xe282ac, 0x00c2a5, 0x00c5a0, 0x00c2a7,
{0x00d4, 0xc394}, /* a8 */ 0x00c5a1, 0x00c2a9, 0x00c2aa, 0x00c2ab,
{0x00d5, 0xc395}, /* ac */ 0x00c2ac, 0x00c2ad, 0x00c2ae, 0x00c2af,
{0x00d6, 0xc396}, /* b0 */ 0x00c2b0, 0x00c2b1, 0x00c2b2, 0x00c2b3,
{0x00d7, 0xc397}, /* b4 */ 0x00c5bd, 0x00c2b5, 0x00c2b6, 0x00c2b7,
{0x00d8, 0xc398}, /* b8 */ 0x00c5be, 0x00c2b9, 0x00c2ba, 0x00c2bb,
{0x00d9, 0xc399}, /* bc */ 0x00c592, 0x00c593, 0x00c5b8, 0x00c2bf,
{0x00da, 0xc39a}, /* c0 */ 0x00c380, 0x00c381, 0x00c382, 0x00c383,
{0x00db, 0xc39b}, /* c4 */ 0x00c384, 0x00c385, 0x00c386, 0x00c387,
{0x00dc, 0xc39c}, /* c8 */ 0x00c388, 0x00c389, 0x00c38a, 0x00c38b,
{0x00dd, 0xc39d}, /* cc */ 0x00c38c, 0x00c38d, 0x00c38e, 0x00c38f,
{0x00de, 0xc39e}, /* d0 */ 0x00c390, 0x00c391, 0x00c392, 0x00c393,
{0x00df, 0xc39f}, /* d4 */ 0x00c394, 0x00c395, 0x00c396, 0x00c397,
{0x00e0, 0xc3a0}, /* d8 */ 0x00c398, 0x00c399, 0x00c39a, 0x00c39b,
{0x00e1, 0xc3a1}, /* dc */ 0x00c39c, 0x00c39d, 0x00c39e, 0x00c39f,
{0x00e2, 0xc3a2}, /* e0 */ 0x00c3a0, 0x00c3a1, 0x00c3a2, 0x00c3a3,
{0x00e3, 0xc3a3}, /* e4 */ 0x00c3a4, 0x00c3a5, 0x00c3a6, 0x00c3a7,
{0x00e4, 0xc3a4}, /* e8 */ 0x00c3a8, 0x00c3a9, 0x00c3aa, 0x00c3ab,
{0x00e5, 0xc3a5}, /* ec */ 0x00c3ac, 0x00c3ad, 0x00c3ae, 0x00c3af,
{0x00e6, 0xc3a6}, /* f0 */ 0x00c3b0, 0x00c3b1, 0x00c3b2, 0x00c3b3,
{0x00e7, 0xc3a7}, /* f4 */ 0x00c3b4, 0x00c3b5, 0x00c3b6, 0x00c3b7,
{0x00e8, 0xc3a8}, /* f8 */ 0x00c3b8, 0x00c3b9, 0x00c3ba, 0x00c3bb,
{0x00e9, 0xc3a9}, /* fc */ 0x00c3bc, 0x00c3bd, 0x00c3be, 0x00c3bf
{0x00ea, 0xc3aa},
{0x00eb, 0xc3ab},
{0x00ec, 0xc3ac},
{0x00ed, 0xc3ad},
{0x00ee, 0xc3ae},
{0x00ef, 0xc3af},
{0x00f0, 0xc3b0},
{0x00f1, 0xc3b1},
{0x00f2, 0xc3b2},
{0x00f3, 0xc3b3},
{0x00f4, 0xc3b4},
{0x00f5, 0xc3b5},
{0x00f6, 0xc3b6},
{0x00f7, 0xc3b7},
{0x00f8, 0xc3b8},
{0x00f9, 0xc3b9},
{0x00fa, 0xc3ba},
{0x00fb, 0xc3bb},
{0x00fc, 0xc3bc},
{0x00fd, 0xc3bd},
{0x00fe, 0xc3be},
{0x00ff, 0xc3bf}
}; };
/* src/backend/utils/mb/Unicode/iso8859_16_to_utf8.map */ /* src/backend/utils/mb/Unicode/iso8859_16_to_utf8.map */
/* This file is generated by UCS_to_most.pl */
static const pg_local_to_utf LUmapISO8859_16[ 128 ] = { static const uint32 iso8859_16_to_unicode_tree_table[];
{0x0080, 0xc280},
{0x0081, 0xc281}, static const pg_mb_radix_tree iso8859_16_to_unicode_tree =
{0x0082, 0xc282}, {
{0x0083, 0xc283}, NULL, /* 16-bit table not used */
{0x0084, 0xc284}, iso8859_16_to_unicode_tree_table,
{0x0085, 0xc285},
{0x0086, 0xc286}, 0x0080, /* offset of table for 1-byte inputs */
{0x0087, 0xc287}, 0x80, /* b1_lower */
{0x0088, 0xc288}, 0xff, /* b1_upper */
{0x0089, 0xc289},
{0x008a, 0xc28a}, 0x0000, /* offset of table for 2-byte inputs */
{0x008b, 0xc28b}, 0x00, /* b2_1_lower */
{0x008c, 0xc28c}, 0x00, /* b2_1_upper */
{0x008d, 0xc28d}, 0x00, /* b2_2_lower */
{0x008e, 0xc28e}, 0x00, /* b2_2_upper */
{0x008f, 0xc28f},
{0x0090, 0xc290}, 0x0000, /* offset of table for 3-byte inputs */
{0x0091, 0xc291}, 0x00, /* b3_1_lower */
{0x0092, 0xc292}, 0x00, /* b3_1_upper */
{0x0093, 0xc293}, 0x00, /* b3_2_lower */
{0x0094, 0xc294}, 0x00, /* b3_2_upper */
{0x0095, 0xc295}, 0x00, /* b3_3_lower */
{0x0096, 0xc296}, 0x00, /* b3_3_upper */
{0x0097, 0xc297},
{0x0098, 0xc298}, 0x0000, /* offset of table for 3-byte inputs */
{0x0099, 0xc299}, 0x00, /* b4_1_lower */
{0x009a, 0xc29a}, 0x00, /* b4_1_upper */
{0x009b, 0xc29b}, 0x00, /* b4_2_lower */
{0x009c, 0xc29c}, 0x00, /* b4_2_upper */
{0x009d, 0xc29d}, 0x00, /* b4_3_lower */
{0x009e, 0xc29e}, 0x00, /* b4_3_upper */
{0x009f, 0xc29f}, 0x00, /* b4_4_lower */
{0x00a0, 0xc2a0}, 0x00 /* b4_4_upper */
{0x00a1, 0xc484}, };
{0x00a2, 0xc485},
{0x00a3, 0xc581}, static const uint32 iso8859_16_to_unicode_tree_table[256] =
{0x00a4, 0xe282ac}, {
{0x00a5, 0xe2809e}, /*** Dummy map, for invalid values - offset 0x00000 ***/
{0x00a6, 0xc5a0},
{0x00a7, 0xc2a7}, /* 00 */ 0x000000, 0x000000, 0x000000, 0x000000,
{0x00a8, 0xc5a1}, /* 04 */ 0x000000, 0x000000, 0x000000, 0x000000,
{0x00a9, 0xc2a9}, /* 08 */ 0x000000, 0x000000, 0x000000, 0x000000,
{0x00aa, 0xc898}, /* 0c */ 0x000000, 0x000000, 0x000000, 0x000000,
{0x00ab, 0xc2ab}, /* 10 */ 0x000000, 0x000000, 0x000000, 0x000000,
{0x00ac, 0xc5b9}, /* 14 */ 0x000000, 0x000000, 0x000000, 0x000000,
{0x00ad, 0xc2ad}, /* 18 */ 0x000000, 0x000000, 0x000000, 0x000000,
{0x00ae, 0xc5ba}, /* 1c */ 0x000000, 0x000000, 0x000000, 0x000000,
{0x00af, 0xc5bb}, /* 20 */ 0x000000, 0x000000, 0x000000, 0x000000,
{0x00b0, 0xc2b0}, /* 24 */ 0x000000, 0x000000, 0x000000, 0x000000,
{0x00b1, 0xc2b1}, /* 28 */ 0x000000, 0x000000, 0x000000, 0x000000,
{0x00b2, 0xc48c}, /* 2c */ 0x000000, 0x000000, 0x000000, 0x000000,
{0x00b3, 0xc582}, /* 30 */ 0x000000, 0x000000, 0x000000, 0x000000,
{0x00b4, 0xc5bd}, /* 34 */ 0x000000, 0x000000, 0x000000, 0x000000,
{0x00b5, 0xe2809d}, /* 38 */ 0x000000, 0x000000, 0x000000, 0x000000,
{0x00b6, 0xc2b6}, /* 3c */ 0x000000, 0x000000, 0x000000, 0x000000,
{0x00b7, 0xc2b7}, /* 40 */ 0x000000, 0x000000, 0x000000, 0x000000,
{0x00b8, 0xc5be}, /* 44 */ 0x000000, 0x000000, 0x000000, 0x000000,
{0x00b9, 0xc48d}, /* 48 */ 0x000000, 0x000000, 0x000000, 0x000000,
{0x00ba, 0xc899}, /* 4c */ 0x000000, 0x000000, 0x000000, 0x000000,
{0x00bb, 0xc2bb}, /* 50 */ 0x000000, 0x000000, 0x000000, 0x000000,
{0x00bc, 0xc592}, /* 54 */ 0x000000, 0x000000, 0x000000, 0x000000,
{0x00bd, 0xc593}, /* 58 */ 0x000000, 0x000000, 0x000000, 0x000000,
{0x00be, 0xc5b8}, /* 5c */ 0x000000, 0x000000, 0x000000, 0x000000,
{0x00bf, 0xc5bc}, /* 60 */ 0x000000, 0x000000, 0x000000, 0x000000,
{0x00c0, 0xc380}, /* 64 */ 0x000000, 0x000000, 0x000000, 0x000000,
{0x00c1, 0xc381}, /* 68 */ 0x000000, 0x000000, 0x000000, 0x000000,
{0x00c2, 0xc382}, /* 6c */ 0x000000, 0x000000, 0x000000, 0x000000,
{0x00c3, 0xc482}, /* 70 */ 0x000000, 0x000000, 0x000000, 0x000000,
{0x00c4, 0xc384}, /* 74 */ 0x000000, 0x000000, 0x000000, 0x000000,
{0x00c5, 0xc486}, /* 78 */ 0x000000, 0x000000, 0x000000, 0x000000,
{0x00c6, 0xc386}, /* 7c */ 0x000000, 0x000000, 0x000000, 0x000000,
{0x00c7, 0xc387},
{0x00c8, 0xc388}, /*** Single byte table, leaf: xx - offset 0x00080 ***/
{0x00c9, 0xc389},
{0x00ca, 0xc38a}, /* 80 */ 0x00c280, 0x00c281, 0x00c282, 0x00c283,
{0x00cb, 0xc38b}, /* 84 */ 0x00c284, 0x00c285, 0x00c286, 0x00c287,
{0x00cc, 0xc38c}, /* 88 */ 0x00c288, 0x00c289, 0x00c28a, 0x00c28b,
{0x00cd, 0xc38d}, /* 8c */ 0x00c28c, 0x00c28d, 0x00c28e, 0x00c28f,
{0x00ce, 0xc38e}, /* 90 */ 0x00c290, 0x00c291, 0x00c292, 0x00c293,
{0x00cf, 0xc38f}, /* 94 */ 0x00c294, 0x00c295, 0x00c296, 0x00c297,
{0x00d0, 0xc490}, /* 98 */ 0x00c298, 0x00c299, 0x00c29a, 0x00c29b,
{0x00d1, 0xc583}, /* 9c */ 0x00c29c, 0x00c29d, 0x00c29e, 0x00c29f,
{0x00d2, 0xc392}, /* a0 */ 0x00c2a0, 0x00c484, 0x00c485, 0x00c581,
{0x00d3, 0xc393}, /* a4 */ 0xe282ac, 0xe2809e, 0x00c5a0, 0x00c2a7,
{0x00d4, 0xc394}, /* a8 */ 0x00c5a1, 0x00c2a9, 0x00c898, 0x00c2ab,
{0x00d5, 0xc590}, /* ac */ 0x00c5b9, 0x00c2ad, 0x00c5ba, 0x00c5bb,
{0x00d6, 0xc396}, /* b0 */ 0x00c2b0, 0x00c2b1, 0x00c48c, 0x00c582,
{0x00d7, 0xc59a}, /* b4 */ 0x00c5bd, 0xe2809d, 0x00c2b6, 0x00c2b7,
{0x00d8, 0xc5b0}, /* b8 */ 0x00c5be, 0x00c48d, 0x00c899, 0x00c2bb,
{0x00d9, 0xc399}, /* bc */ 0x00c592, 0x00c593, 0x00c5b8, 0x00c5bc,
{0x00da, 0xc39a}, /* c0 */ 0x00c380, 0x00c381, 0x00c382, 0x00c482,
{0x00db, 0xc39b}, /* c4 */ 0x00c384, 0x00c486, 0x00c386, 0x00c387,
{0x00dc, 0xc39c}, /* c8 */ 0x00c388, 0x00c389, 0x00c38a, 0x00c38b,
{0x00dd, 0xc498}, /* cc */ 0x00c38c, 0x00c38d, 0x00c38e, 0x00c38f,
{0x00de, 0xc89a}, /* d0 */ 0x00c490, 0x00c583, 0x00c392, 0x00c393,
{0x00df, 0xc39f}, /* d4 */ 0x00c394, 0x00c590, 0x00c396, 0x00c59a,
{0x00e0, 0xc3a0}, /* d8 */ 0x00c5b0, 0x00c399, 0x00c39a, 0x00c39b,
{0x00e1, 0xc3a1}, /* dc */ 0x00c39c, 0x00c498, 0x00c89a, 0x00c39f,
{0x00e2, 0xc3a2}, /* e0 */ 0x00c3a0, 0x00c3a1, 0x00c3a2, 0x00c483,
{0x00e3, 0xc483}, /* e4 */ 0x00c3a4, 0x00c487, 0x00c3a6, 0x00c3a7,
{0x00e4, 0xc3a4}, /* e8 */ 0x00c3a8, 0x00c3a9, 0x00c3aa, 0x00c3ab,
{0x00e5, 0xc487}, /* ec */ 0x00c3ac, 0x00c3ad, 0x00c3ae, 0x00c3af,
{0x00e6, 0xc3a6}, /* f0 */ 0x00c491, 0x00c584, 0x00c3b2, 0x00c3b3,
{0x00e7, 0xc3a7}, /* f4 */ 0x00c3b4, 0x00c591, 0x00c3b6, 0x00c59b,
{0x00e8, 0xc3a8}, /* f8 */ 0x00c5b1, 0x00c3b9, 0x00c3ba, 0x00c3bb,
{0x00e9, 0xc3a9}, /* fc */ 0x00c3bc, 0x00c499, 0x00c89b, 0x00c3bf
{0x00ea, 0xc3aa},
{0x00eb, 0xc3ab},
{0x00ec, 0xc3ac},
{0x00ed, 0xc3ad},
{0x00ee, 0xc3ae},
{0x00ef, 0xc3af},
{0x00f0, 0xc491},
{0x00f1, 0xc584},
{0x00f2, 0xc3b2},
{0x00f3, 0xc3b3},
{0x00f4, 0xc3b4},
{0x00f5, 0xc591},
{0x00f6, 0xc3b6},
{0x00f7, 0xc59b},
{0x00f8, 0xc5b1},
{0x00f9, 0xc3b9},
{0x00fa, 0xc3ba},
{0x00fb, 0xc3bb},
{0x00fc, 0xc3bc},
{0x00fd, 0xc499},
{0x00fe, 0xc89b},
{0x00ff, 0xc3bf}
}; };
/* src/backend/utils/mb/Unicode/iso8859_2_to_utf8.map */ /* src/backend/utils/mb/Unicode/iso8859_2_to_utf8.map */
/* This file is generated by UCS_to_most.pl */
static const pg_local_to_utf LUmapISO8859_2[ 128 ] = { static const uint16 iso8859_2_to_unicode_tree_table[];
{0x0080, 0xc280},
{0x0081, 0xc281}, static const pg_mb_radix_tree iso8859_2_to_unicode_tree =
{0x0082, 0xc282}, {
{0x0083, 0xc283}, iso8859_2_to_unicode_tree_table,
{0x0084, 0xc284}, NULL, /* 32-bit table not used */
{0x0085, 0xc285},
{0x0086, 0xc286}, 0x0080, /* offset of table for 1-byte inputs */
{0x0087, 0xc287}, 0x80, /* b1_lower */
{0x0088, 0xc288}, 0xff, /* b1_upper */
{0x0089, 0xc289},
{0x008a, 0xc28a}, 0x0000, /* offset of table for 2-byte inputs */
{0x008b, 0xc28b}, 0x00, /* b2_1_lower */
{0x008c, 0xc28c}, 0x00, /* b2_1_upper */
{0x008d, 0xc28d}, 0x00, /* b2_2_lower */
{0x008e, 0xc28e}, 0x00, /* b2_2_upper */
{0x008f, 0xc28f},
{0x0090, 0xc290}, 0x0000, /* offset of table for 3-byte inputs */
{0x0091, 0xc291}, 0x00, /* b3_1_lower */
{0x0092, 0xc292}, 0x00, /* b3_1_upper */
{0x0093, 0xc293}, 0x00, /* b3_2_lower */
{0x0094, 0xc294}, 0x00, /* b3_2_upper */
{0x0095, 0xc295}, 0x00, /* b3_3_lower */
{0x0096, 0xc296}, 0x00, /* b3_3_upper */
{0x0097, 0xc297},
{0x0098, 0xc298}, 0x0000, /* offset of table for 3-byte inputs */
{0x0099, 0xc299}, 0x00, /* b4_1_lower */
{0x009a, 0xc29a}, 0x00, /* b4_1_upper */
{0x009b, 0xc29b}, 0x00, /* b4_2_lower */
{0x009c, 0xc29c}, 0x00, /* b4_2_upper */
{0x009d, 0xc29d}, 0x00, /* b4_3_lower */
{0x009e, 0xc29e}, 0x00, /* b4_3_upper */
{0x009f, 0xc29f}, 0x00, /* b4_4_lower */
{0x00a0, 0xc2a0}, 0x00 /* b4_4_upper */
{0x00a1, 0xc484}, };
{0x00a2, 0xcb98},
{0x00a3, 0xc581}, static const uint16 iso8859_2_to_unicode_tree_table[256] =
{0x00a4, 0xc2a4}, {
{0x00a5, 0xc4bd}, /*** Dummy map, for invalid values - offset 0x00000 ***/
{0x00a6, 0xc59a},
{0x00a7, 0xc2a7}, /* 00 */ 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
{0x00a8, 0xc2a8}, /* 08 */ 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
{0x00a9, 0xc5a0}, /* 10 */ 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
{0x00aa, 0xc59e}, /* 18 */ 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
{0x00ab, 0xc5a4}, /* 20 */ 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
{0x00ac, 0xc5b9}, /* 28 */ 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
{0x00ad, 0xc2ad}, /* 30 */ 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
{0x00ae, 0xc5bd}, /* 38 */ 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
{0x00af, 0xc5bb}, /* 40 */ 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
{0x00b0, 0xc2b0}, /* 48 */ 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
{0x00b1, 0xc485}, /* 50 */ 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
{0x00b2, 0xcb9b}, /* 58 */ 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
{0x00b3, 0xc582}, /* 60 */ 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
{0x00b4, 0xc2b4}, /* 68 */ 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
{0x00b5, 0xc4be}, /* 70 */ 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
{0x00b6, 0xc59b}, /* 78 */ 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
{0x00b7, 0xcb87},
{0x00b8, 0xc2b8}, /*** Single byte table, leaf: xx - offset 0x00080 ***/
{0x00b9, 0xc5a1},
{0x00ba, 0xc59f}, /* 80 */ 0xc280, 0xc281, 0xc282, 0xc283, 0xc284, 0xc285, 0xc286, 0xc287,
{0x00bb, 0xc5a5}, /* 88 */ 0xc288, 0xc289, 0xc28a, 0xc28b, 0xc28c, 0xc28d, 0xc28e, 0xc28f,
{0x00bc, 0xc5ba}, /* 90 */ 0xc290, 0xc291, 0xc292, 0xc293, 0xc294, 0xc295, 0xc296, 0xc297,
{0x00bd, 0xcb9d}, /* 98 */ 0xc298, 0xc299, 0xc29a, 0xc29b, 0xc29c, 0xc29d, 0xc29e, 0xc29f,
{0x00be, 0xc5be}, /* a0 */ 0xc2a0, 0xc484, 0xcb98, 0xc581, 0xc2a4, 0xc4bd, 0xc59a, 0xc2a7,
{0x00bf, 0xc5bc}, /* a8 */ 0xc2a8, 0xc5a0, 0xc59e, 0xc5a4, 0xc5b9, 0xc2ad, 0xc5bd, 0xc5bb,
{0x00c0, 0xc594}, /* b0 */ 0xc2b0, 0xc485, 0xcb9b, 0xc582, 0xc2b4, 0xc4be, 0xc59b, 0xcb87,
{0x00c1, 0xc381}, /* b8 */ 0xc2b8, 0xc5a1, 0xc59f, 0xc5a5, 0xc5ba, 0xcb9d, 0xc5be, 0xc5bc,
{0x00c2, 0xc382}, /* c0 */ 0xc594, 0xc381, 0xc382, 0xc482, 0xc384, 0xc4b9, 0xc486, 0xc387,
{0x00c3, 0xc482}, /* c8 */ 0xc48c, 0xc389, 0xc498, 0xc38b, 0xc49a, 0xc38d, 0xc38e, 0xc48e,
{0x00c4, 0xc384}, /* d0 */ 0xc490, 0xc583, 0xc587, 0xc393, 0xc394, 0xc590, 0xc396, 0xc397,
{0x00c5, 0xc4b9}, /* d8 */ 0xc598, 0xc5ae, 0xc39a, 0xc5b0, 0xc39c, 0xc39d, 0xc5a2, 0xc39f,
{0x00c6, 0xc486}, /* e0 */ 0xc595, 0xc3a1, 0xc3a2, 0xc483, 0xc3a4, 0xc4ba, 0xc487, 0xc3a7,
{0x00c7, 0xc387}, /* e8 */ 0xc48d, 0xc3a9, 0xc499, 0xc3ab, 0xc49b, 0xc3ad, 0xc3ae, 0xc48f,
{0x00c8, 0xc48c}, /* f0 */ 0xc491, 0xc584, 0xc588, 0xc3b3, 0xc3b4, 0xc591, 0xc3b6, 0xc3b7,
{0x00c9, 0xc389}, /* f8 */ 0xc599, 0xc5af, 0xc3ba, 0xc5b1, 0xc3bc, 0xc3bd, 0xc5a3, 0xcb99
{0x00ca, 0xc498},
{0x00cb, 0xc38b},
{0x00cc, 0xc49a},
{0x00cd, 0xc38d},
{0x00ce, 0xc38e},
{0x00cf, 0xc48e},
{0x00d0, 0xc490},
{0x00d1, 0xc583},
{0x00d2, 0xc587},
{0x00d3, 0xc393},
{0x00d4, 0xc394},
{0x00d5, 0xc590},
{0x00d6, 0xc396},
{0x00d7, 0xc397},
{0x00d8, 0xc598},
{0x00d9, 0xc5ae},
{0x00da, 0xc39a},
{0x00db, 0xc5b0},
{0x00dc, 0xc39c},
{0x00dd, 0xc39d},
{0x00de, 0xc5a2},
{0x00df, 0xc39f},
{0x00e0, 0xc595},
{0x00e1, 0xc3a1},
{0x00e2, 0xc3a2},
{0x00e3, 0xc483},
{0x00e4, 0xc3a4},
{0x00e5, 0xc4ba},
{0x00e6, 0xc487},
{0x00e7, 0xc3a7},
{0x00e8, 0xc48d},
{0x00e9, 0xc3a9},
{0x00ea, 0xc499},
{0x00eb, 0xc3ab},
{0x00ec, 0xc49b},
{0x00ed, 0xc3ad},
{0x00ee, 0xc3ae},
{0x00ef, 0xc48f},
{0x00f0, 0xc491},
{0x00f1, 0xc584},
{0x00f2, 0xc588},
{0x00f3, 0xc3b3},
{0x00f4, 0xc3b4},
{0x00f5, 0xc591},
{0x00f6, 0xc3b6},
{0x00f7, 0xc3b7},
{0x00f8, 0xc599},
{0x00f9, 0xc5af},
{0x00fa, 0xc3ba},
{0x00fb, 0xc5b1},
{0x00fc, 0xc3bc},
{0x00fd, 0xc3bd},
{0x00fe, 0xc5a3},
{0x00ff, 0xcb99}
}; };
/* src/backend/utils/mb/Unicode/iso8859_3_to_utf8.map */ /* src/backend/utils/mb/Unicode/iso8859_3_to_utf8.map */
/* This file is generated by UCS_to_most.pl */
static const pg_local_to_utf LUmapISO8859_3[ 121 ] = { static const uint16 iso8859_3_to_unicode_tree_table[];
{0x0080, 0xc280},
{0x0081, 0xc281}, static const pg_mb_radix_tree iso8859_3_to_unicode_tree =
{0x0082, 0xc282}, {
{0x0083, 0xc283}, iso8859_3_to_unicode_tree_table,
{0x0084, 0xc284}, NULL, /* 32-bit table not used */
{0x0085, 0xc285},
{0x0086, 0xc286}, 0x0080, /* offset of table for 1-byte inputs */
{0x0087, 0xc287}, 0x80, /* b1_lower */
{0x0088, 0xc288}, 0xff, /* b1_upper */
{0x0089, 0xc289},
{0x008a, 0xc28a}, 0x0000, /* offset of table for 2-byte inputs */
{0x008b, 0xc28b}, 0x00, /* b2_1_lower */
{0x008c, 0xc28c}, 0x00, /* b2_1_upper */
{0x008d, 0xc28d}, 0x00, /* b2_2_lower */
{0x008e, 0xc28e}, 0x00, /* b2_2_upper */
{0x008f, 0xc28f},
{0x0090, 0xc290}, 0x0000, /* offset of table for 3-byte inputs */
{0x0091, 0xc291}, 0x00, /* b3_1_lower */
{0x0092, 0xc292}, 0x00, /* b3_1_upper */
{0x0093, 0xc293}, 0x00, /* b3_2_lower */
{0x0094, 0xc294}, 0x00, /* b3_2_upper */
{0x0095, 0xc295}, 0x00, /* b3_3_lower */
{0x0096, 0xc296}, 0x00, /* b3_3_upper */
{0x0097, 0xc297},
{0x0098, 0xc298}, 0x0000, /* offset of table for 3-byte inputs */
{0x0099, 0xc299}, 0x00, /* b4_1_lower */
{0x009a, 0xc29a}, 0x00, /* b4_1_upper */
{0x009b, 0xc29b}, 0x00, /* b4_2_lower */
{0x009c, 0xc29c}, 0x00, /* b4_2_upper */
{0x009d, 0xc29d}, 0x00, /* b4_3_lower */
{0x009e, 0xc29e}, 0x00, /* b4_3_upper */
{0x009f, 0xc29f}, 0x00, /* b4_4_lower */
{0x00a0, 0xc2a0}, 0x00 /* b4_4_upper */
{0x00a1, 0xc4a6}, };
{0x00a2, 0xcb98},
{0x00a3, 0xc2a3}, static const uint16 iso8859_3_to_unicode_tree_table[256] =
{0x00a4, 0xc2a4}, {
{0x00a6, 0xc4a4}, /*** Dummy map, for invalid values - offset 0x00000 ***/
{0x00a7, 0xc2a7},
{0x00a8, 0xc2a8}, /* 00 */ 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
{0x00a9, 0xc4b0}, /* 08 */ 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
{0x00aa, 0xc59e}, /* 10 */ 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
{0x00ab, 0xc49e}, /* 18 */ 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
{0x00ac, 0xc4b4}, /* 20 */ 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
{0x00ad, 0xc2ad}, /* 28 */ 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
{0x00af, 0xc5bb}, /* 30 */ 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
{0x00b0, 0xc2b0}, /* 38 */ 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
{0x00b1, 0xc4a7}, /* 40 */ 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
{0x00b2, 0xc2b2}, /* 48 */ 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
{0x00b3, 0xc2b3}, /* 50 */ 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
{0x00b4, 0xc2b4}, /* 58 */ 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
{0x00b5, 0xc2b5}, /* 60 */ 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
{0x00b6, 0xc4a5}, /* 68 */ 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
{0x00b7, 0xc2b7}, /* 70 */ 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
{0x00b8, 0xc2b8}, /* 78 */ 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
{0x00b9, 0xc4b1},
{0x00ba, 0xc59f}, /*** Single byte table, leaf: xx - offset 0x00080 ***/
{0x00bb, 0xc49f},
{0x00bc, 0xc4b5}, /* 80 */ 0xc280, 0xc281, 0xc282, 0xc283, 0xc284, 0xc285, 0xc286, 0xc287,
{0x00bd, 0xc2bd}, /* 88 */ 0xc288, 0xc289, 0xc28a, 0xc28b, 0xc28c, 0xc28d, 0xc28e, 0xc28f,
{0x00bf, 0xc5bc}, /* 90 */ 0xc290, 0xc291, 0xc292, 0xc293, 0xc294, 0xc295, 0xc296, 0xc297,
{0x00c0, 0xc380}, /* 98 */ 0xc298, 0xc299, 0xc29a, 0xc29b, 0xc29c, 0xc29d, 0xc29e, 0xc29f,
{0x00c1, 0xc381}, /* a0 */ 0xc2a0, 0xc4a6, 0xcb98, 0xc2a3, 0xc2a4, 0x0000, 0xc4a4, 0xc2a7,
{0x00c2, 0xc382}, /* a8 */ 0xc2a8, 0xc4b0, 0xc59e, 0xc49e, 0xc4b4, 0xc2ad, 0x0000, 0xc5bb,
{0x00c4, 0xc384}, /* b0 */ 0xc2b0, 0xc4a7, 0xc2b2, 0xc2b3, 0xc2b4, 0xc2b5, 0xc4a5, 0xc2b7,
{0x00c5, 0xc48a}, /* b8 */ 0xc2b8, 0xc4b1, 0xc59f, 0xc49f, 0xc4b5, 0xc2bd, 0x0000, 0xc5bc,
{0x00c6, 0xc488}, /* c0 */ 0xc380, 0xc381, 0xc382, 0x0000, 0xc384, 0xc48a, 0xc488, 0xc387,
{0x00c7, 0xc387}, /* c8 */ 0xc388, 0xc389, 0xc38a, 0xc38b, 0xc38c, 0xc38d, 0xc38e, 0xc38f,
{0x00c8, 0xc388}, /* d0 */ 0x0000, 0xc391, 0xc392, 0xc393, 0xc394, 0xc4a0, 0xc396, 0xc397,
{0x00c9, 0xc389}, /* d8 */ 0xc49c, 0xc399, 0xc39a, 0xc39b, 0xc39c, 0xc5ac, 0xc59c, 0xc39f,
{0x00ca, 0xc38a}, /* e0 */ 0xc3a0, 0xc3a1, 0xc3a2, 0x0000, 0xc3a4, 0xc48b, 0xc489, 0xc3a7,
{0x00cb, 0xc38b}, /* e8 */ 0xc3a8, 0xc3a9, 0xc3aa, 0xc3ab, 0xc3ac, 0xc3ad, 0xc3ae, 0xc3af,
{0x00cc, 0xc38c}, /* f0 */ 0x0000, 0xc3b1, 0xc3b2, 0xc3b3, 0xc3b4, 0xc4a1, 0xc3b6, 0xc3b7,
{0x00cd, 0xc38d}, /* f8 */ 0xc49d, 0xc3b9, 0xc3ba, 0xc3bb, 0xc3bc, 0xc5ad, 0xc59d, 0xcb99
{0x00ce, 0xc38e},
{0x00cf, 0xc38f},
{0x00d1, 0xc391},
{0x00d2, 0xc392},
{0x00d3, 0xc393},
{0x00d4, 0xc394},
{0x00d5, 0xc4a0},
{0x00d6, 0xc396},
{0x00d7, 0xc397},
{0x00d8, 0xc49c},
{0x00d9, 0xc399},
{0x00da, 0xc39a},
{0x00db, 0xc39b},
{0x00dc, 0xc39c},
{0x00dd, 0xc5ac},
{0x00de, 0xc59c},
{0x00df, 0xc39f},
{0x00e0, 0xc3a0},
{0x00e1, 0xc3a1},
{0x00e2, 0xc3a2},
{0x00e4, 0xc3a4},
{0x00e5, 0xc48b},
{0x00e6, 0xc489},
{0x00e7, 0xc3a7},
{0x00e8, 0xc3a8},
{0x00e9, 0xc3a9},
{0x00ea, 0xc3aa},
{0x00eb, 0xc3ab},
{0x00ec, 0xc3ac},
{0x00ed, 0xc3ad},
{0x00ee, 0xc3ae},
{0x00ef, 0xc3af},
{0x00f1, 0xc3b1},
{0x00f2, 0xc3b2},
{0x00f3, 0xc3b3},
{0x00f4, 0xc3b4},
{0x00f5, 0xc4a1},
{0x00f6, 0xc3b6},
{0x00f7, 0xc3b7},
{0x00f8, 0xc49d},
{0x00f9, 0xc3b9},
{0x00fa, 0xc3ba},
{0x00fb, 0xc3bb},
{0x00fc, 0xc3bc},
{0x00fd, 0xc5ad},
{0x00fe, 0xc59d},
{0x00ff, 0xcb99}
}; };
/* src/backend/utils/mb/Unicode/iso8859_4_to_utf8.map */ /* src/backend/utils/mb/Unicode/iso8859_4_to_utf8.map */
/* This file is generated by UCS_to_most.pl */
static const pg_local_to_utf LUmapISO8859_4[ 128 ] = { static const uint16 iso8859_4_to_unicode_tree_table[];
{0x0080, 0xc280},
{0x0081, 0xc281}, static const pg_mb_radix_tree iso8859_4_to_unicode_tree =
{0x0082, 0xc282}, {
{0x0083, 0xc283}, iso8859_4_to_unicode_tree_table,
{0x0084, 0xc284}, NULL, /* 32-bit table not used */
{0x0085, 0xc285},
{0x0086, 0xc286}, 0x0080, /* offset of table for 1-byte inputs */
{0x0087, 0xc287}, 0x80, /* b1_lower */
{0x0088, 0xc288}, 0xff, /* b1_upper */
{0x0089, 0xc289},
{0x008a, 0xc28a}, 0x0000, /* offset of table for 2-byte inputs */
{0x008b, 0xc28b}, 0x00, /* b2_1_lower */
{0x008c, 0xc28c}, 0x00, /* b2_1_upper */
{0x008d, 0xc28d}, 0x00, /* b2_2_lower */
{0x008e, 0xc28e}, 0x00, /* b2_2_upper */
{0x008f, 0xc28f},
{0x0090, 0xc290}, 0x0000, /* offset of table for 3-byte inputs */
{0x0091, 0xc291}, 0x00, /* b3_1_lower */
{0x0092, 0xc292}, 0x00, /* b3_1_upper */
{0x0093, 0xc293}, 0x00, /* b3_2_lower */
{0x0094, 0xc294}, 0x00, /* b3_2_upper */
{0x0095, 0xc295}, 0x00, /* b3_3_lower */
{0x0096, 0xc296}, 0x00, /* b3_3_upper */
{0x0097, 0xc297},
{0x0098, 0xc298}, 0x0000, /* offset of table for 3-byte inputs */
{0x0099, 0xc299}, 0x00, /* b4_1_lower */
{0x009a, 0xc29a}, 0x00, /* b4_1_upper */
{0x009b, 0xc29b}, 0x00, /* b4_2_lower */
{0x009c, 0xc29c}, 0x00, /* b4_2_upper */
{0x009d, 0xc29d}, 0x00, /* b4_3_lower */
{0x009e, 0xc29e}, 0x00, /* b4_3_upper */
{0x009f, 0xc29f}, 0x00, /* b4_4_lower */
{0x00a0, 0xc2a0}, 0x00 /* b4_4_upper */
{0x00a1, 0xc484}, };
{0x00a2, 0xc4b8},
{0x00a3, 0xc596}, static const uint16 iso8859_4_to_unicode_tree_table[256] =
{0x00a4, 0xc2a4}, {
{0x00a5, 0xc4a8}, /*** Dummy map, for invalid values - offset 0x00000 ***/
{0x00a6, 0xc4bb},
{0x00a7, 0xc2a7}, /* 00 */ 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
{0x00a8, 0xc2a8}, /* 08 */ 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
{0x00a9, 0xc5a0}, /* 10 */ 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
{0x00aa, 0xc492}, /* 18 */ 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
{0x00ab, 0xc4a2}, /* 20 */ 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
{0x00ac, 0xc5a6}, /* 28 */ 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
{0x00ad, 0xc2ad}, /* 30 */ 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
{0x00ae, 0xc5bd}, /* 38 */ 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
{0x00af, 0xc2af}, /* 40 */ 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
{0x00b0, 0xc2b0}, /* 48 */ 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
{0x00b1, 0xc485}, /* 50 */ 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
{0x00b2, 0xcb9b}, /* 58 */ 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
{0x00b3, 0xc597}, /* 60 */ 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
{0x00b4, 0xc2b4}, /* 68 */ 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
{0x00b5, 0xc4a9}, /* 70 */ 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
{0x00b6, 0xc4bc}, /* 78 */ 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
{0x00b7, 0xcb87},
{0x00b8, 0xc2b8}, /*** Single byte table, leaf: xx - offset 0x00080 ***/
{0x00b9, 0xc5a1},
{0x00ba, 0xc493}, /* 80 */ 0xc280, 0xc281, 0xc282, 0xc283, 0xc284, 0xc285, 0xc286, 0xc287,
{0x00bb, 0xc4a3}, /* 88 */ 0xc288, 0xc289, 0xc28a, 0xc28b, 0xc28c, 0xc28d, 0xc28e, 0xc28f,
{0x00bc, 0xc5a7}, /* 90 */ 0xc290, 0xc291, 0xc292, 0xc293, 0xc294, 0xc295, 0xc296, 0xc297,
{0x00bd, 0xc58a}, /* 98 */ 0xc298, 0xc299, 0xc29a, 0xc29b, 0xc29c, 0xc29d, 0xc29e, 0xc29f,
{0x00be, 0xc5be}, /* a0 */ 0xc2a0, 0xc484, 0xc4b8, 0xc596, 0xc2a4, 0xc4a8, 0xc4bb, 0xc2a7,
{0x00bf, 0xc58b}, /* a8 */ 0xc2a8, 0xc5a0, 0xc492, 0xc4a2, 0xc5a6, 0xc2ad, 0xc5bd, 0xc2af,
{0x00c0, 0xc480}, /* b0 */ 0xc2b0, 0xc485, 0xcb9b, 0xc597, 0xc2b4, 0xc4a9, 0xc4bc, 0xcb87,
{0x00c1, 0xc381}, /* b8 */ 0xc2b8, 0xc5a1, 0xc493, 0xc4a3, 0xc5a7, 0xc58a, 0xc5be, 0xc58b,
{0x00c2, 0xc382}, /* c0 */ 0xc480, 0xc381, 0xc382, 0xc383, 0xc384, 0xc385, 0xc386, 0xc4ae,
{0x00c3, 0xc383}, /* c8 */ 0xc48c, 0xc389, 0xc498, 0xc38b, 0xc496, 0xc38d, 0xc38e, 0xc4aa,
{0x00c4, 0xc384}, /* d0 */ 0xc490, 0xc585, 0xc58c, 0xc4b6, 0xc394, 0xc395, 0xc396, 0xc397,
{0x00c5, 0xc385}, /* d8 */ 0xc398, 0xc5b2, 0xc39a, 0xc39b, 0xc39c, 0xc5a8, 0xc5aa, 0xc39f,
{0x00c6, 0xc386}, /* e0 */ 0xc481, 0xc3a1, 0xc3a2, 0xc3a3, 0xc3a4, 0xc3a5, 0xc3a6, 0xc4af,
{0x00c7, 0xc4ae}, /* e8 */ 0xc48d, 0xc3a9, 0xc499, 0xc3ab, 0xc497, 0xc3ad, 0xc3ae, 0xc4ab,
{0x00c8, 0xc48c}, /* f0 */ 0xc491, 0xc586, 0xc58d, 0xc4b7, 0xc3b4, 0xc3b5, 0xc3b6, 0xc3b7,
{0x00c9, 0xc389}, /* f8 */ 0xc3b8, 0xc5b3, 0xc3ba, 0xc3bb, 0xc3bc, 0xc5a9, 0xc5ab, 0xcb99
{0x00ca, 0xc498},
{0x00cb, 0xc38b},
{0x00cc, 0xc496},
{0x00cd, 0xc38d},
{0x00ce, 0xc38e},
{0x00cf, 0xc4aa},
{0x00d0, 0xc490},
{0x00d1, 0xc585},
{0x00d2, 0xc58c},
{0x00d3, 0xc4b6},
{0x00d4, 0xc394},
{0x00d5, 0xc395},
{0x00d6, 0xc396},
{0x00d7, 0xc397},
{0x00d8, 0xc398},
{0x00d9, 0xc5b2},
{0x00da, 0xc39a},
{0x00db, 0xc39b},
{0x00dc, 0xc39c},
{0x00dd, 0xc5a8},
{0x00de, 0xc5aa},
{0x00df, 0xc39f},
{0x00e0, 0xc481},
{0x00e1, 0xc3a1},
{0x00e2, 0xc3a2},
{0x00e3, 0xc3a3},
{0x00e4, 0xc3a4},
{0x00e5, 0xc3a5},
{0x00e6, 0xc3a6},
{0x00e7, 0xc4af},
{0x00e8, 0xc48d},
{0x00e9, 0xc3a9},
{0x00ea, 0xc499},
{0x00eb, 0xc3ab},
{0x00ec, 0xc497},
{0x00ed, 0xc3ad},
{0x00ee, 0xc3ae},
{0x00ef, 0xc4ab},
{0x00f0, 0xc491},
{0x00f1, 0xc586},
{0x00f2, 0xc58d},
{0x00f3, 0xc4b7},
{0x00f4, 0xc3b4},
{0x00f5, 0xc3b5},
{0x00f6, 0xc3b6},
{0x00f7, 0xc3b7},
{0x00f8, 0xc3b8},
{0x00f9, 0xc5b3},
{0x00fa, 0xc3ba},
{0x00fb, 0xc3bb},
{0x00fc, 0xc3bc},
{0x00fd, 0xc5a9},
{0x00fe, 0xc5ab},
{0x00ff, 0xcb99}
}; };
/* src/backend/utils/mb/Unicode/iso8859_5_to_utf8.map */ /* src/backend/utils/mb/Unicode/iso8859_5_to_utf8.map */
/* This file is generated by UCS_to_most.pl */
static const pg_local_to_utf LUmapISO8859_5[ 128 ] = { static const uint32 iso8859_5_to_unicode_tree_table[];
{0x0080, 0xc280},
{0x0081, 0xc281}, static const pg_mb_radix_tree iso8859_5_to_unicode_tree =
{0x0082, 0xc282}, {
{0x0083, 0xc283}, NULL, /* 16-bit table not used */
{0x0084, 0xc284}, iso8859_5_to_unicode_tree_table,
{0x0085, 0xc285},
{0x0086, 0xc286}, 0x0080, /* offset of table for 1-byte inputs */
{0x0087, 0xc287}, 0x80, /* b1_lower */
{0x0088, 0xc288}, 0xff, /* b1_upper */
{0x0089, 0xc289},
{0x008a, 0xc28a}, 0x0000, /* offset of table for 2-byte inputs */
{0x008b, 0xc28b}, 0x00, /* b2_1_lower */
{0x008c, 0xc28c}, 0x00, /* b2_1_upper */
{0x008d, 0xc28d}, 0x00, /* b2_2_lower */
{0x008e, 0xc28e}, 0x00, /* b2_2_upper */
{0x008f, 0xc28f},
{0x0090, 0xc290}, 0x0000, /* offset of table for 3-byte inputs */
{0x0091, 0xc291}, 0x00, /* b3_1_lower */
{0x0092, 0xc292}, 0x00, /* b3_1_upper */
{0x0093, 0xc293}, 0x00, /* b3_2_lower */
{0x0094, 0xc294}, 0x00, /* b3_2_upper */
{0x0095, 0xc295}, 0x00, /* b3_3_lower */
{0x0096, 0xc296}, 0x00, /* b3_3_upper */
{0x0097, 0xc297},
{0x0098, 0xc298}, 0x0000, /* offset of table for 3-byte inputs */
{0x0099, 0xc299}, 0x00, /* b4_1_lower */
{0x009a, 0xc29a}, 0x00, /* b4_1_upper */
{0x009b, 0xc29b}, 0x00, /* b4_2_lower */
{0x009c, 0xc29c}, 0x00, /* b4_2_upper */
{0x009d, 0xc29d}, 0x00, /* b4_3_lower */
{0x009e, 0xc29e}, 0x00, /* b4_3_upper */
{0x009f, 0xc29f}, 0x00, /* b4_4_lower */
{0x00a0, 0xc2a0}, 0x00 /* b4_4_upper */
{0x00a1, 0xd081}, };
{0x00a2, 0xd082},
{0x00a3, 0xd083}, static const uint32 iso8859_5_to_unicode_tree_table[256] =
{0x00a4, 0xd084}, {
{0x00a5, 0xd085}, /*** Dummy map, for invalid values - offset 0x00000 ***/
{0x00a6, 0xd086},
{0x00a7, 0xd087}, /* 00 */ 0x000000, 0x000000, 0x000000, 0x000000,
{0x00a8, 0xd088}, /* 04 */ 0x000000, 0x000000, 0x000000, 0x000000,
{0x00a9, 0xd089}, /* 08 */ 0x000000, 0x000000, 0x000000, 0x000000,
{0x00aa, 0xd08a}, /* 0c */ 0x000000, 0x000000, 0x000000, 0x000000,
{0x00ab, 0xd08b}, /* 10 */ 0x000000, 0x000000, 0x000000, 0x000000,
{0x00ac, 0xd08c}, /* 14 */ 0x000000, 0x000000, 0x000000, 0x000000,
{0x00ad, 0xc2ad}, /* 18 */ 0x000000, 0x000000, 0x000000, 0x000000,
{0x00ae, 0xd08e}, /* 1c */ 0x000000, 0x000000, 0x000000, 0x000000,
{0x00af, 0xd08f}, /* 20 */ 0x000000, 0x000000, 0x000000, 0x000000,
{0x00b0, 0xd090}, /* 24 */ 0x000000, 0x000000, 0x000000, 0x000000,
{0x00b1, 0xd091}, /* 28 */ 0x000000, 0x000000, 0x000000, 0x000000,
{0x00b2, 0xd092}, /* 2c */ 0x000000, 0x000000, 0x000000, 0x000000,
{0x00b3, 0xd093}, /* 30 */ 0x000000, 0x000000, 0x000000, 0x000000,
{0x00b4, 0xd094}, /* 34 */ 0x000000, 0x000000, 0x000000, 0x000000,
{0x00b5, 0xd095}, /* 38 */ 0x000000, 0x000000, 0x000000, 0x000000,
{0x00b6, 0xd096}, /* 3c */ 0x000000, 0x000000, 0x000000, 0x000000,
{0x00b7, 0xd097}, /* 40 */ 0x000000, 0x000000, 0x000000, 0x000000,
{0x00b8, 0xd098}, /* 44 */ 0x000000, 0x000000, 0x000000, 0x000000,
{0x00b9, 0xd099}, /* 48 */ 0x000000, 0x000000, 0x000000, 0x000000,
{0x00ba, 0xd09a}, /* 4c */ 0x000000, 0x000000, 0x000000, 0x000000,
{0x00bb, 0xd09b}, /* 50 */ 0x000000, 0x000000, 0x000000, 0x000000,
{0x00bc, 0xd09c}, /* 54 */ 0x000000, 0x000000, 0x000000, 0x000000,
{0x00bd, 0xd09d}, /* 58 */ 0x000000, 0x000000, 0x000000, 0x000000,
{0x00be, 0xd09e}, /* 5c */ 0x000000, 0x000000, 0x000000, 0x000000,
{0x00bf, 0xd09f}, /* 60 */ 0x000000, 0x000000, 0x000000, 0x000000,
{0x00c0, 0xd0a0}, /* 64 */ 0x000000, 0x000000, 0x000000, 0x000000,
{0x00c1, 0xd0a1}, /* 68 */ 0x000000, 0x000000, 0x000000, 0x000000,
{0x00c2, 0xd0a2}, /* 6c */ 0x000000, 0x000000, 0x000000, 0x000000,
{0x00c3, 0xd0a3}, /* 70 */ 0x000000, 0x000000, 0x000000, 0x000000,
{0x00c4, 0xd0a4}, /* 74 */ 0x000000, 0x000000, 0x000000, 0x000000,
{0x00c5, 0xd0a5}, /* 78 */ 0x000000, 0x000000, 0x000000, 0x000000,
{0x00c6, 0xd0a6}, /* 7c */ 0x000000, 0x000000, 0x000000, 0x000000,
{0x00c7, 0xd0a7},
{0x00c8, 0xd0a8}, /*** Single byte table, leaf: xx - offset 0x00080 ***/
{0x00c9, 0xd0a9},
{0x00ca, 0xd0aa}, /* 80 */ 0x00c280, 0x00c281, 0x00c282, 0x00c283,
{0x00cb, 0xd0ab}, /* 84 */ 0x00c284, 0x00c285, 0x00c286, 0x00c287,
{0x00cc, 0xd0ac}, /* 88 */ 0x00c288, 0x00c289, 0x00c28a, 0x00c28b,
{0x00cd, 0xd0ad}, /* 8c */ 0x00c28c, 0x00c28d, 0x00c28e, 0x00c28f,
{0x00ce, 0xd0ae}, /* 90 */ 0x00c290, 0x00c291, 0x00c292, 0x00c293,
{0x00cf, 0xd0af}, /* 94 */ 0x00c294, 0x00c295, 0x00c296, 0x00c297,
{0x00d0, 0xd0b0}, /* 98 */ 0x00c298, 0x00c299, 0x00c29a, 0x00c29b,
{0x00d1, 0xd0b1}, /* 9c */ 0x00c29c, 0x00c29d, 0x00c29e, 0x00c29f,
{0x00d2, 0xd0b2}, /* a0 */ 0x00c2a0, 0x00d081, 0x00d082, 0x00d083,
{0x00d3, 0xd0b3}, /* a4 */ 0x00d084, 0x00d085, 0x00d086, 0x00d087,
{0x00d4, 0xd0b4}, /* a8 */ 0x00d088, 0x00d089, 0x00d08a, 0x00d08b,
{0x00d5, 0xd0b5}, /* ac */ 0x00d08c, 0x00c2ad, 0x00d08e, 0x00d08f,
{0x00d6, 0xd0b6}, /* b0 */ 0x00d090, 0x00d091, 0x00d092, 0x00d093,
{0x00d7, 0xd0b7}, /* b4 */ 0x00d094, 0x00d095, 0x00d096, 0x00d097,
{0x00d8, 0xd0b8}, /* b8 */ 0x00d098, 0x00d099, 0x00d09a, 0x00d09b,
{0x00d9, 0xd0b9}, /* bc */ 0x00d09c, 0x00d09d, 0x00d09e, 0x00d09f,
{0x00da, 0xd0ba}, /* c0 */ 0x00d0a0, 0x00d0a1, 0x00d0a2, 0x00d0a3,
{0x00db, 0xd0bb}, /* c4 */ 0x00d0a4, 0x00d0a5, 0x00d0a6, 0x00d0a7,
{0x00dc, 0xd0bc}, /* c8 */ 0x00d0a8, 0x00d0a9, 0x00d0aa, 0x00d0ab,
{0x00dd, 0xd0bd}, /* cc */ 0x00d0ac, 0x00d0ad, 0x00d0ae, 0x00d0af,
{0x00de, 0xd0be}, /* d0 */ 0x00d0b0, 0x00d0b1, 0x00d0b2, 0x00d0b3,
{0x00df, 0xd0bf}, /* d4 */ 0x00d0b4, 0x00d0b5, 0x00d0b6, 0x00d0b7,
{0x00e0, 0xd180}, /* d8 */ 0x00d0b8, 0x00d0b9, 0x00d0ba, 0x00d0bb,
{0x00e1, 0xd181}, /* dc */ 0x00d0bc, 0x00d0bd, 0x00d0be, 0x00d0bf,
{0x00e2, 0xd182}, /* e0 */ 0x00d180, 0x00d181, 0x00d182, 0x00d183,
{0x00e3, 0xd183}, /* e4 */ 0x00d184, 0x00d185, 0x00d186, 0x00d187,
{0x00e4, 0xd184}, /* e8 */ 0x00d188, 0x00d189, 0x00d18a, 0x00d18b,
{0x00e5, 0xd185}, /* ec */ 0x00d18c, 0x00d18d, 0x00d18e, 0x00d18f,
{0x00e6, 0xd186}, /* f0 */ 0xe28496, 0x00d191, 0x00d192, 0x00d193,
{0x00e7, 0xd187}, /* f4 */ 0x00d194, 0x00d195, 0x00d196, 0x00d197,
{0x00e8, 0xd188}, /* f8 */ 0x00d198, 0x00d199, 0x00d19a, 0x00d19b,
{0x00e9, 0xd189}, /* fc */ 0x00d19c, 0x00c2a7, 0x00d19e, 0x00d19f
{0x00ea, 0xd18a},
{0x00eb, 0xd18b},
{0x00ec, 0xd18c},
{0x00ed, 0xd18d},
{0x00ee, 0xd18e},
{0x00ef, 0xd18f},
{0x00f0, 0xe28496},
{0x00f1, 0xd191},
{0x00f2, 0xd192},
{0x00f3, 0xd193},
{0x00f4, 0xd194},
{0x00f5, 0xd195},
{0x00f6, 0xd196},
{0x00f7, 0xd197},
{0x00f8, 0xd198},
{0x00f9, 0xd199},
{0x00fa, 0xd19a},
{0x00fb, 0xd19b},
{0x00fc, 0xd19c},
{0x00fd, 0xc2a7},
{0x00fe, 0xd19e},
{0x00ff, 0xd19f}
}; };
/* src/backend/utils/mb/Unicode/iso8859_6_to_utf8.map */ /* src/backend/utils/mb/Unicode/iso8859_6_to_utf8.map */
/* This file is generated by UCS_to_most.pl */
static const pg_local_to_utf LUmapISO8859_6[ 83 ] = { static const uint16 iso8859_6_to_unicode_tree_table[];
{0x0080, 0xc280},
{0x0081, 0xc281}, static const pg_mb_radix_tree iso8859_6_to_unicode_tree =
{0x0082, 0xc282}, {
{0x0083, 0xc283}, iso8859_6_to_unicode_tree_table,
{0x0084, 0xc284}, NULL, /* 32-bit table not used */
{0x0085, 0xc285},
{0x0086, 0xc286}, 0x0073, /* offset of table for 1-byte inputs */
{0x0087, 0xc287}, 0x80, /* b1_lower */
{0x0088, 0xc288}, 0xf2, /* b1_upper */
{0x0089, 0xc289},
{0x008a, 0xc28a}, 0x0000, /* offset of table for 2-byte inputs */
{0x008b, 0xc28b}, 0x00, /* b2_1_lower */
{0x008c, 0xc28c}, 0x00, /* b2_1_upper */
{0x008d, 0xc28d}, 0x00, /* b2_2_lower */
{0x008e, 0xc28e}, 0x00, /* b2_2_upper */
{0x008f, 0xc28f},
{0x0090, 0xc290}, 0x0000, /* offset of table for 3-byte inputs */
{0x0091, 0xc291}, 0x00, /* b3_1_lower */
{0x0092, 0xc292}, 0x00, /* b3_1_upper */
{0x0093, 0xc293}, 0x00, /* b3_2_lower */
{0x0094, 0xc294}, 0x00, /* b3_2_upper */
{0x0095, 0xc295}, 0x00, /* b3_3_lower */
{0x0096, 0xc296}, 0x00, /* b3_3_upper */
{0x0097, 0xc297},
{0x0098, 0xc298}, 0x0000, /* offset of table for 3-byte inputs */
{0x0099, 0xc299}, 0x00, /* b4_1_lower */
{0x009a, 0xc29a}, 0x00, /* b4_1_upper */
{0x009b, 0xc29b}, 0x00, /* b4_2_lower */
{0x009c, 0xc29c}, 0x00, /* b4_2_upper */
{0x009d, 0xc29d}, 0x00, /* b4_3_lower */
{0x009e, 0xc29e}, 0x00, /* b4_3_upper */
{0x009f, 0xc29f}, 0x00, /* b4_4_lower */
{0x00a0, 0xc2a0}, 0x00 /* b4_4_upper */
{0x00a4, 0xc2a4}, };
{0x00ac, 0xd88c},
{0x00ad, 0xc2ad}, static const uint16 iso8859_6_to_unicode_tree_table[230] =
{0x00bb, 0xd89b}, {
{0x00bf, 0xd89f}, /*** Dummy map, for invalid values - offset 0x00000 ***/
{0x00c1, 0xd8a1},
{0x00c2, 0xd8a2}, /* 00 */ 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
{0x00c3, 0xd8a3}, /* 08 */ 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
{0x00c4, 0xd8a4}, /* 10 */ 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
{0x00c5, 0xd8a5}, /* 18 */ 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
{0x00c6, 0xd8a6}, /* 20 */ 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
{0x00c7, 0xd8a7}, /* 28 */ 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
{0x00c8, 0xd8a8}, /* 30 */ 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
{0x00c9, 0xd8a9}, /* 38 */ 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
{0x00ca, 0xd8aa}, /* 40 */ 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
{0x00cb, 0xd8ab}, /* 48 */ 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
{0x00cc, 0xd8ac}, /* 50 */ 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
{0x00cd, 0xd8ad}, /* 58 */ 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
{0x00ce, 0xd8ae}, /* 60 */ 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
{0x00cf, 0xd8af}, /* 68 */ 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
{0x00d0, 0xd8b0}, /* 70 */ 0x0000, 0x0000, 0x0000,
{0x00d1, 0xd8b1},
{0x00d2, 0xd8b2}, /*** Single byte table, leaf: xx - offset 0x00073 ***/
{0x00d3, 0xd8b3},
{0x00d4, 0xd8b4}, /* 80 */ 0xc280, 0xc281, 0xc282, 0xc283, 0xc284, 0xc285, 0xc286, 0xc287,
{0x00d5, 0xd8b5}, /* 88 */ 0xc288, 0xc289, 0xc28a, 0xc28b, 0xc28c, 0xc28d, 0xc28e, 0xc28f,
{0x00d6, 0xd8b6}, /* 90 */ 0xc290, 0xc291, 0xc292, 0xc293, 0xc294, 0xc295, 0xc296, 0xc297,
{0x00d7, 0xd8b7}, /* 98 */ 0xc298, 0xc299, 0xc29a, 0xc29b, 0xc29c, 0xc29d, 0xc29e, 0xc29f,
{0x00d8, 0xd8b8}, /* a0 */ 0xc2a0, 0x0000, 0x0000, 0x0000, 0xc2a4, 0x0000, 0x0000, 0x0000,
{0x00d9, 0xd8b9}, /* a8 */ 0x0000, 0x0000, 0x0000, 0x0000, 0xd88c, 0xc2ad, 0x0000, 0x0000,
{0x00da, 0xd8ba}, /* b0 */ 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
{0x00e0, 0xd980}, /* b8 */ 0x0000, 0x0000, 0x0000, 0xd89b, 0x0000, 0x0000, 0x0000, 0xd89f,
{0x00e1, 0xd981}, /* c0 */ 0x0000, 0xd8a1, 0xd8a2, 0xd8a3, 0xd8a4, 0xd8a5, 0xd8a6, 0xd8a7,
{0x00e2, 0xd982}, /* c8 */ 0xd8a8, 0xd8a9, 0xd8aa, 0xd8ab, 0xd8ac, 0xd8ad, 0xd8ae, 0xd8af,
{0x00e3, 0xd983}, /* d0 */ 0xd8b0, 0xd8b1, 0xd8b2, 0xd8b3, 0xd8b4, 0xd8b5, 0xd8b6, 0xd8b7,
{0x00e4, 0xd984}, /* d8 */ 0xd8b8, 0xd8b9, 0xd8ba, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
{0x00e5, 0xd985}, /* e0 */ 0xd980, 0xd981, 0xd982, 0xd983, 0xd984, 0xd985, 0xd986, 0xd987,
{0x00e6, 0xd986}, /* e8 */ 0xd988, 0xd989, 0xd98a, 0xd98b, 0xd98c, 0xd98d, 0xd98e, 0xd98f,
{0x00e7, 0xd987}, /* f0 */ 0xd990, 0xd991, 0xd992
{0x00e8, 0xd988},
{0x00e9, 0xd989},
{0x00ea, 0xd98a},
{0x00eb, 0xd98b},
{0x00ec, 0xd98c},
{0x00ed, 0xd98d},
{0x00ee, 0xd98e},
{0x00ef, 0xd98f},
{0x00f0, 0xd990},
{0x00f1, 0xd991},
{0x00f2, 0xd992}
}; };
/* src/backend/utils/mb/Unicode/iso8859_7_to_utf8.map */ /* src/backend/utils/mb/Unicode/iso8859_7_to_utf8.map */
/* This file is generated by UCS_to_most.pl */
static const pg_local_to_utf LUmapISO8859_7[ 125 ] = { static const uint32 iso8859_7_to_unicode_tree_table[];
{0x0080, 0xc280},
{0x0081, 0xc281}, static const pg_mb_radix_tree iso8859_7_to_unicode_tree =
{0x0082, 0xc282}, {
{0x0083, 0xc283}, NULL, /* 16-bit table not used */
{0x0084, 0xc284}, iso8859_7_to_unicode_tree_table,
{0x0085, 0xc285},
{0x0086, 0xc286}, 0x007f, /* offset of table for 1-byte inputs */
{0x0087, 0xc287}, 0x80, /* b1_lower */
{0x0088, 0xc288}, 0xfe, /* b1_upper */
{0x0089, 0xc289},
{0x008a, 0xc28a}, 0x0000, /* offset of table for 2-byte inputs */
{0x008b, 0xc28b}, 0x00, /* b2_1_lower */
{0x008c, 0xc28c}, 0x00, /* b2_1_upper */
{0x008d, 0xc28d}, 0x00, /* b2_2_lower */
{0x008e, 0xc28e}, 0x00, /* b2_2_upper */
{0x008f, 0xc28f},
{0x0090, 0xc290}, 0x0000, /* offset of table for 3-byte inputs */
{0x0091, 0xc291}, 0x00, /* b3_1_lower */
{0x0092, 0xc292}, 0x00, /* b3_1_upper */
{0x0093, 0xc293}, 0x00, /* b3_2_lower */
{0x0094, 0xc294}, 0x00, /* b3_2_upper */
{0x0095, 0xc295}, 0x00, /* b3_3_lower */
{0x0096, 0xc296}, 0x00, /* b3_3_upper */
{0x0097, 0xc297},
{0x0098, 0xc298}, 0x0000, /* offset of table for 3-byte inputs */
{0x0099, 0xc299}, 0x00, /* b4_1_lower */
{0x009a, 0xc29a}, 0x00, /* b4_1_upper */
{0x009b, 0xc29b}, 0x00, /* b4_2_lower */
{0x009c, 0xc29c}, 0x00, /* b4_2_upper */
{0x009d, 0xc29d}, 0x00, /* b4_3_lower */
{0x009e, 0xc29e}, 0x00, /* b4_3_upper */
{0x009f, 0xc29f}, 0x00, /* b4_4_lower */
{0x00a0, 0xc2a0}, 0x00 /* b4_4_upper */
{0x00a1, 0xe28098}, };
{0x00a2, 0xe28099},
{0x00a3, 0xc2a3}, static const uint32 iso8859_7_to_unicode_tree_table[254] =
{0x00a4, 0xe282ac}, {
{0x00a5, 0xe282af}, /*** Dummy map, for invalid values - offset 0x00000 ***/
{0x00a6, 0xc2a6},
{0x00a7, 0xc2a7}, /* 00 */ 0x000000, 0x000000, 0x000000, 0x000000,
{0x00a8, 0xc2a8}, /* 04 */ 0x000000, 0x000000, 0x000000, 0x000000,
{0x00a9, 0xc2a9}, /* 08 */ 0x000000, 0x000000, 0x000000, 0x000000,
{0x00aa, 0xcdba}, /* 0c */ 0x000000, 0x000000, 0x000000, 0x000000,
{0x00ab, 0xc2ab}, /* 10 */ 0x000000, 0x000000, 0x000000, 0x000000,
{0x00ac, 0xc2ac}, /* 14 */ 0x000000, 0x000000, 0x000000, 0x000000,
{0x00ad, 0xc2ad}, /* 18 */ 0x000000, 0x000000, 0x000000, 0x000000,
{0x00af, 0xe28095}, /* 1c */ 0x000000, 0x000000, 0x000000, 0x000000,
{0x00b0, 0xc2b0}, /* 20 */ 0x000000, 0x000000, 0x000000, 0x000000,
{0x00b1, 0xc2b1}, /* 24 */ 0x000000, 0x000000, 0x000000, 0x000000,
{0x00b2, 0xc2b2}, /* 28 */ 0x000000, 0x000000, 0x000000, 0x000000,
{0x00b3, 0xc2b3}, /* 2c */ 0x000000, 0x000000, 0x000000, 0x000000,
{0x00b4, 0xce84}, /* 30 */ 0x000000, 0x000000, 0x000000, 0x000000,
{0x00b5, 0xce85}, /* 34 */ 0x000000, 0x000000, 0x000000, 0x000000,
{0x00b6, 0xce86}, /* 38 */ 0x000000, 0x000000, 0x000000, 0x000000,
{0x00b7, 0xc2b7}, /* 3c */ 0x000000, 0x000000, 0x000000, 0x000000,
{0x00b8, 0xce88}, /* 40 */ 0x000000, 0x000000, 0x000000, 0x000000,
{0x00b9, 0xce89}, /* 44 */ 0x000000, 0x000000, 0x000000, 0x000000,
{0x00ba, 0xce8a}, /* 48 */ 0x000000, 0x000000, 0x000000, 0x000000,
{0x00bb, 0xc2bb}, /* 4c */ 0x000000, 0x000000, 0x000000, 0x000000,
{0x00bc, 0xce8c}, /* 50 */ 0x000000, 0x000000, 0x000000, 0x000000,
{0x00bd, 0xc2bd}, /* 54 */ 0x000000, 0x000000, 0x000000, 0x000000,
{0x00be, 0xce8e}, /* 58 */ 0x000000, 0x000000, 0x000000, 0x000000,
{0x00bf, 0xce8f}, /* 5c */ 0x000000, 0x000000, 0x000000, 0x000000,
{0x00c0, 0xce90}, /* 60 */ 0x000000, 0x000000, 0x000000, 0x000000,
{0x00c1, 0xce91}, /* 64 */ 0x000000, 0x000000, 0x000000, 0x000000,
{0x00c2, 0xce92}, /* 68 */ 0x000000, 0x000000, 0x000000, 0x000000,
{0x00c3, 0xce93}, /* 6c */ 0x000000, 0x000000, 0x000000, 0x000000,
{0x00c4, 0xce94}, /* 70 */ 0x000000, 0x000000, 0x000000, 0x000000,
{0x00c5, 0xce95}, /* 74 */ 0x000000, 0x000000, 0x000000, 0x000000,
{0x00c6, 0xce96}, /* 78 */ 0x000000, 0x000000, 0x000000, 0x000000,
{0x00c7, 0xce97}, /* 7c */ 0x000000, 0x000000, 0x000000,
{0x00c8, 0xce98},
{0x00c9, 0xce99}, /*** Single byte table, leaf: xx - offset 0x0007f ***/
{0x00ca, 0xce9a},
{0x00cb, 0xce9b}, /* 80 */ 0x00c280, 0x00c281, 0x00c282, 0x00c283,
{0x00cc, 0xce9c}, /* 84 */ 0x00c284, 0x00c285, 0x00c286, 0x00c287,
{0x00cd, 0xce9d}, /* 88 */ 0x00c288, 0x00c289, 0x00c28a, 0x00c28b,
{0x00ce, 0xce9e}, /* 8c */ 0x00c28c, 0x00c28d, 0x00c28e, 0x00c28f,
{0x00cf, 0xce9f}, /* 90 */ 0x00c290, 0x00c291, 0x00c292, 0x00c293,
{0x00d0, 0xcea0}, /* 94 */ 0x00c294, 0x00c295, 0x00c296, 0x00c297,
{0x00d1, 0xcea1}, /* 98 */ 0x00c298, 0x00c299, 0x00c29a, 0x00c29b,
{0x00d3, 0xcea3}, /* 9c */ 0x00c29c, 0x00c29d, 0x00c29e, 0x00c29f,
{0x00d4, 0xcea4}, /* a0 */ 0x00c2a0, 0xe28098, 0xe28099, 0x00c2a3,
{0x00d5, 0xcea5}, /* a4 */ 0xe282ac, 0xe282af, 0x00c2a6, 0x00c2a7,
{0x00d6, 0xcea6}, /* a8 */ 0x00c2a8, 0x00c2a9, 0x00cdba, 0x00c2ab,
{0x00d7, 0xcea7}, /* ac */ 0x00c2ac, 0x00c2ad, 0x000000, 0xe28095,
{0x00d8, 0xcea8}, /* b0 */ 0x00c2b0, 0x00c2b1, 0x00c2b2, 0x00c2b3,
{0x00d9, 0xcea9}, /* b4 */ 0x00ce84, 0x00ce85, 0x00ce86, 0x00c2b7,
{0x00da, 0xceaa}, /* b8 */ 0x00ce88, 0x00ce89, 0x00ce8a, 0x00c2bb,
{0x00db, 0xceab}, /* bc */ 0x00ce8c, 0x00c2bd, 0x00ce8e, 0x00ce8f,
{0x00dc, 0xceac}, /* c0 */ 0x00ce90, 0x00ce91, 0x00ce92, 0x00ce93,
{0x00dd, 0xcead}, /* c4 */ 0x00ce94, 0x00ce95, 0x00ce96, 0x00ce97,
{0x00de, 0xceae}, /* c8 */ 0x00ce98, 0x00ce99, 0x00ce9a, 0x00ce9b,
{0x00df, 0xceaf}, /* cc */ 0x00ce9c, 0x00ce9d, 0x00ce9e, 0x00ce9f,
{0x00e0, 0xceb0}, /* d0 */ 0x00cea0, 0x00cea1, 0x000000, 0x00cea3,
{0x00e1, 0xceb1}, /* d4 */ 0x00cea4, 0x00cea5, 0x00cea6, 0x00cea7,
{0x00e2, 0xceb2}, /* d8 */ 0x00cea8, 0x00cea9, 0x00ceaa, 0x00ceab,
{0x00e3, 0xceb3}, /* dc */ 0x00ceac, 0x00cead, 0x00ceae, 0x00ceaf,
{0x00e4, 0xceb4}, /* e0 */ 0x00ceb0, 0x00ceb1, 0x00ceb2, 0x00ceb3,
{0x00e5, 0xceb5}, /* e4 */ 0x00ceb4, 0x00ceb5, 0x00ceb6, 0x00ceb7,
{0x00e6, 0xceb6}, /* e8 */ 0x00ceb8, 0x00ceb9, 0x00ceba, 0x00cebb,
{0x00e7, 0xceb7}, /* ec */ 0x00cebc, 0x00cebd, 0x00cebe, 0x00cebf,
{0x00e8, 0xceb8}, /* f0 */ 0x00cf80, 0x00cf81, 0x00cf82, 0x00cf83,
{0x00e9, 0xceb9}, /* f4 */ 0x00cf84, 0x00cf85, 0x00cf86, 0x00cf87,
{0x00ea, 0xceba}, /* f8 */ 0x00cf88, 0x00cf89, 0x00cf8a, 0x00cf8b,
{0x00eb, 0xcebb}, /* fc */ 0x00cf8c, 0x00cf8d, 0x00cf8e
{0x00ec, 0xcebc},
{0x00ed, 0xcebd},
{0x00ee, 0xcebe},
{0x00ef, 0xcebf},
{0x00f0, 0xcf80},
{0x00f1, 0xcf81},
{0x00f2, 0xcf82},
{0x00f3, 0xcf83},
{0x00f4, 0xcf84},
{0x00f5, 0xcf85},
{0x00f6, 0xcf86},
{0x00f7, 0xcf87},
{0x00f8, 0xcf88},
{0x00f9, 0xcf89},
{0x00fa, 0xcf8a},
{0x00fb, 0xcf8b},
{0x00fc, 0xcf8c},
{0x00fd, 0xcf8d},
{0x00fe, 0xcf8e}
}; };
/* src/backend/utils/mb/Unicode/iso8859_8_to_utf8.map */ /* src/backend/utils/mb/Unicode/iso8859_8_to_utf8.map */
/* This file is generated by UCS_to_most.pl */
static const pg_local_to_utf LUmapISO8859_8[ 92 ] = { static const uint32 iso8859_8_to_unicode_tree_table[];
{0x0080, 0xc280},
{0x0081, 0xc281}, static const pg_mb_radix_tree iso8859_8_to_unicode_tree =
{0x0082, 0xc282}, {
{0x0083, 0xc283}, NULL, /* 16-bit table not used */
{0x0084, 0xc284}, iso8859_8_to_unicode_tree_table,
{0x0085, 0xc285},
{0x0086, 0xc286}, 0x007f, /* offset of table for 1-byte inputs */
{0x0087, 0xc287}, 0x80, /* b1_lower */
{0x0088, 0xc288}, 0xfe, /* b1_upper */
{0x0089, 0xc289},
{0x008a, 0xc28a}, 0x0000, /* offset of table for 2-byte inputs */
{0x008b, 0xc28b}, 0x00, /* b2_1_lower */
{0x008c, 0xc28c}, 0x00, /* b2_1_upper */
{0x008d, 0xc28d}, 0x00, /* b2_2_lower */
{0x008e, 0xc28e}, 0x00, /* b2_2_upper */
{0x008f, 0xc28f},
{0x0090, 0xc290}, 0x0000, /* offset of table for 3-byte inputs */
{0x0091, 0xc291}, 0x00, /* b3_1_lower */
{0x0092, 0xc292}, 0x00, /* b3_1_upper */
{0x0093, 0xc293}, 0x00, /* b3_2_lower */
{0x0094, 0xc294}, 0x00, /* b3_2_upper */
{0x0095, 0xc295}, 0x00, /* b3_3_lower */
{0x0096, 0xc296}, 0x00, /* b3_3_upper */
{0x0097, 0xc297},
{0x0098, 0xc298}, 0x0000, /* offset of table for 3-byte inputs */
{0x0099, 0xc299}, 0x00, /* b4_1_lower */
{0x009a, 0xc29a}, 0x00, /* b4_1_upper */
{0x009b, 0xc29b}, 0x00, /* b4_2_lower */
{0x009c, 0xc29c}, 0x00, /* b4_2_upper */
{0x009d, 0xc29d}, 0x00, /* b4_3_lower */
{0x009e, 0xc29e}, 0x00, /* b4_3_upper */
{0x009f, 0xc29f}, 0x00, /* b4_4_lower */
{0x00a0, 0xc2a0}, 0x00 /* b4_4_upper */
{0x00a2, 0xc2a2}, };
{0x00a3, 0xc2a3},
{0x00a4, 0xc2a4}, static const uint32 iso8859_8_to_unicode_tree_table[254] =
{0x00a5, 0xc2a5}, {
{0x00a6, 0xc2a6}, /*** Dummy map, for invalid values - offset 0x00000 ***/
{0x00a7, 0xc2a7},
{0x00a8, 0xc2a8}, /* 00 */ 0x000000, 0x000000, 0x000000, 0x000000,
{0x00a9, 0xc2a9}, /* 04 */ 0x000000, 0x000000, 0x000000, 0x000000,
{0x00aa, 0xc397}, /* 08 */ 0x000000, 0x000000, 0x000000, 0x000000,
{0x00ab, 0xc2ab}, /* 0c */ 0x000000, 0x000000, 0x000000, 0x000000,
{0x00ac, 0xc2ac}, /* 10 */ 0x000000, 0x000000, 0x000000, 0x000000,
{0x00ad, 0xc2ad}, /* 14 */ 0x000000, 0x000000, 0x000000, 0x000000,
{0x00ae, 0xc2ae}, /* 18 */ 0x000000, 0x000000, 0x000000, 0x000000,
{0x00af, 0xc2af}, /* 1c */ 0x000000, 0x000000, 0x000000, 0x000000,
{0x00b0, 0xc2b0}, /* 20 */ 0x000000, 0x000000, 0x000000, 0x000000,
{0x00b1, 0xc2b1}, /* 24 */ 0x000000, 0x000000, 0x000000, 0x000000,
{0x00b2, 0xc2b2}, /* 28 */ 0x000000, 0x000000, 0x000000, 0x000000,
{0x00b3, 0xc2b3}, /* 2c */ 0x000000, 0x000000, 0x000000, 0x000000,
{0x00b4, 0xc2b4}, /* 30 */ 0x000000, 0x000000, 0x000000, 0x000000,
{0x00b5, 0xc2b5}, /* 34 */ 0x000000, 0x000000, 0x000000, 0x000000,
{0x00b6, 0xc2b6}, /* 38 */ 0x000000, 0x000000, 0x000000, 0x000000,
{0x00b7, 0xc2b7}, /* 3c */ 0x000000, 0x000000, 0x000000, 0x000000,
{0x00b8, 0xc2b8}, /* 40 */ 0x000000, 0x000000, 0x000000, 0x000000,
{0x00b9, 0xc2b9}, /* 44 */ 0x000000, 0x000000, 0x000000, 0x000000,
{0x00ba, 0xc3b7}, /* 48 */ 0x000000, 0x000000, 0x000000, 0x000000,
{0x00bb, 0xc2bb}, /* 4c */ 0x000000, 0x000000, 0x000000, 0x000000,
{0x00bc, 0xc2bc}, /* 50 */ 0x000000, 0x000000, 0x000000, 0x000000,
{0x00bd, 0xc2bd}, /* 54 */ 0x000000, 0x000000, 0x000000, 0x000000,
{0x00be, 0xc2be}, /* 58 */ 0x000000, 0x000000, 0x000000, 0x000000,
{0x00df, 0xe28097}, /* 5c */ 0x000000, 0x000000, 0x000000, 0x000000,
{0x00e0, 0xd790}, /* 60 */ 0x000000, 0x000000, 0x000000, 0x000000,
{0x00e1, 0xd791}, /* 64 */ 0x000000, 0x000000, 0x000000, 0x000000,
{0x00e2, 0xd792}, /* 68 */ 0x000000, 0x000000, 0x000000, 0x000000,
{0x00e3, 0xd793}, /* 6c */ 0x000000, 0x000000, 0x000000, 0x000000,
{0x00e4, 0xd794}, /* 70 */ 0x000000, 0x000000, 0x000000, 0x000000,
{0x00e5, 0xd795}, /* 74 */ 0x000000, 0x000000, 0x000000, 0x000000,
{0x00e6, 0xd796}, /* 78 */ 0x000000, 0x000000, 0x000000, 0x000000,
{0x00e7, 0xd797}, /* 7c */ 0x000000, 0x000000, 0x000000,
{0x00e8, 0xd798},
{0x00e9, 0xd799}, /*** Single byte table, leaf: xx - offset 0x0007f ***/
{0x00ea, 0xd79a},
{0x00eb, 0xd79b}, /* 80 */ 0x00c280, 0x00c281, 0x00c282, 0x00c283,
{0x00ec, 0xd79c}, /* 84 */ 0x00c284, 0x00c285, 0x00c286, 0x00c287,
{0x00ed, 0xd79d}, /* 88 */ 0x00c288, 0x00c289, 0x00c28a, 0x00c28b,
{0x00ee, 0xd79e}, /* 8c */ 0x00c28c, 0x00c28d, 0x00c28e, 0x00c28f,
{0x00ef, 0xd79f}, /* 90 */ 0x00c290, 0x00c291, 0x00c292, 0x00c293,
{0x00f0, 0xd7a0}, /* 94 */ 0x00c294, 0x00c295, 0x00c296, 0x00c297,
{0x00f1, 0xd7a1}, /* 98 */ 0x00c298, 0x00c299, 0x00c29a, 0x00c29b,
{0x00f2, 0xd7a2}, /* 9c */ 0x00c29c, 0x00c29d, 0x00c29e, 0x00c29f,
{0x00f3, 0xd7a3}, /* a0 */ 0x00c2a0, 0x000000, 0x00c2a2, 0x00c2a3,
{0x00f4, 0xd7a4}, /* a4 */ 0x00c2a4, 0x00c2a5, 0x00c2a6, 0x00c2a7,
{0x00f5, 0xd7a5}, /* a8 */ 0x00c2a8, 0x00c2a9, 0x00c397, 0x00c2ab,
{0x00f6, 0xd7a6}, /* ac */ 0x00c2ac, 0x00c2ad, 0x00c2ae, 0x00c2af,
{0x00f7, 0xd7a7}, /* b0 */ 0x00c2b0, 0x00c2b1, 0x00c2b2, 0x00c2b3,
{0x00f8, 0xd7a8}, /* b4 */ 0x00c2b4, 0x00c2b5, 0x00c2b6, 0x00c2b7,
{0x00f9, 0xd7a9}, /* b8 */ 0x00c2b8, 0x00c2b9, 0x00c3b7, 0x00c2bb,
{0x00fa, 0xd7aa}, /* bc */ 0x00c2bc, 0x00c2bd, 0x00c2be, 0x000000,
{0x00fd, 0xe2808e}, /* c0 */ 0x000000, 0x000000, 0x000000, 0x000000,
{0x00fe, 0xe2808f} /* c4 */ 0x000000, 0x000000, 0x000000, 0x000000,
/* c8 */ 0x000000, 0x000000, 0x000000, 0x000000,
/* cc */ 0x000000, 0x000000, 0x000000, 0x000000,
/* d0 */ 0x000000, 0x000000, 0x000000, 0x000000,
/* d4 */ 0x000000, 0x000000, 0x000000, 0x000000,
/* d8 */ 0x000000, 0x000000, 0x000000, 0x000000,
/* dc */ 0x000000, 0x000000, 0x000000, 0xe28097,
/* e0 */ 0x00d790, 0x00d791, 0x00d792, 0x00d793,
/* e4 */ 0x00d794, 0x00d795, 0x00d796, 0x00d797,
/* e8 */ 0x00d798, 0x00d799, 0x00d79a, 0x00d79b,
/* ec */ 0x00d79c, 0x00d79d, 0x00d79e, 0x00d79f,
/* f0 */ 0x00d7a0, 0x00d7a1, 0x00d7a2, 0x00d7a3,
/* f4 */ 0x00d7a4, 0x00d7a5, 0x00d7a6, 0x00d7a7,
/* f8 */ 0x00d7a8, 0x00d7a9, 0x00d7aa, 0x000000,
/* fc */ 0x000000, 0xe2808e, 0xe2808f
}; };
/* src/backend/utils/mb/Unicode/iso8859_9_to_utf8.map */ /* src/backend/utils/mb/Unicode/iso8859_9_to_utf8.map */
/* This file is generated by UCS_to_most.pl */
static const pg_local_to_utf LUmapISO8859_9[ 128 ] = { static const uint16 iso8859_9_to_unicode_tree_table[];
{0x0080, 0xc280},
{0x0081, 0xc281}, static const pg_mb_radix_tree iso8859_9_to_unicode_tree =
{0x0082, 0xc282}, {
{0x0083, 0xc283}, iso8859_9_to_unicode_tree_table,
{0x0084, 0xc284}, NULL, /* 32-bit table not used */
{0x0085, 0xc285},
{0x0086, 0xc286}, 0x0080, /* offset of table for 1-byte inputs */
{0x0087, 0xc287}, 0x80, /* b1_lower */
{0x0088, 0xc288}, 0xff, /* b1_upper */
{0x0089, 0xc289},
{0x008a, 0xc28a}, 0x0000, /* offset of table for 2-byte inputs */
{0x008b, 0xc28b}, 0x00, /* b2_1_lower */
{0x008c, 0xc28c}, 0x00, /* b2_1_upper */
{0x008d, 0xc28d}, 0x00, /* b2_2_lower */
{0x008e, 0xc28e}, 0x00, /* b2_2_upper */
{0x008f, 0xc28f},
{0x0090, 0xc290}, 0x0000, /* offset of table for 3-byte inputs */
{0x0091, 0xc291}, 0x00, /* b3_1_lower */
{0x0092, 0xc292}, 0x00, /* b3_1_upper */
{0x0093, 0xc293}, 0x00, /* b3_2_lower */
{0x0094, 0xc294}, 0x00, /* b3_2_upper */
{0x0095, 0xc295}, 0x00, /* b3_3_lower */
{0x0096, 0xc296}, 0x00, /* b3_3_upper */
{0x0097, 0xc297},
{0x0098, 0xc298}, 0x0000, /* offset of table for 3-byte inputs */
{0x0099, 0xc299}, 0x00, /* b4_1_lower */
{0x009a, 0xc29a}, 0x00, /* b4_1_upper */
{0x009b, 0xc29b}, 0x00, /* b4_2_lower */
{0x009c, 0xc29c}, 0x00, /* b4_2_upper */
{0x009d, 0xc29d}, 0x00, /* b4_3_lower */
{0x009e, 0xc29e}, 0x00, /* b4_3_upper */
{0x009f, 0xc29f}, 0x00, /* b4_4_lower */
{0x00a0, 0xc2a0}, 0x00 /* b4_4_upper */
{0x00a1, 0xc2a1}, };
{0x00a2, 0xc2a2},
{0x00a3, 0xc2a3}, static const uint16 iso8859_9_to_unicode_tree_table[256] =
{0x00a4, 0xc2a4}, {
{0x00a5, 0xc2a5}, /*** Dummy map, for invalid values - offset 0x00000 ***/
{0x00a6, 0xc2a6},
{0x00a7, 0xc2a7}, /* 00 */ 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
{0x00a8, 0xc2a8}, /* 08 */ 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
{0x00a9, 0xc2a9}, /* 10 */ 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
{0x00aa, 0xc2aa}, /* 18 */ 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
{0x00ab, 0xc2ab}, /* 20 */ 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
{0x00ac, 0xc2ac}, /* 28 */ 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
{0x00ad, 0xc2ad}, /* 30 */ 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
{0x00ae, 0xc2ae}, /* 38 */ 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
{0x00af, 0xc2af}, /* 40 */ 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
{0x00b0, 0xc2b0}, /* 48 */ 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
{0x00b1, 0xc2b1}, /* 50 */ 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
{0x00b2, 0xc2b2}, /* 58 */ 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
{0x00b3, 0xc2b3}, /* 60 */ 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
{0x00b4, 0xc2b4}, /* 68 */ 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
{0x00b5, 0xc2b5}, /* 70 */ 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
{0x00b6, 0xc2b6}, /* 78 */ 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
{0x00b7, 0xc2b7},
{0x00b8, 0xc2b8}, /*** Single byte table, leaf: xx - offset 0x00080 ***/
{0x00b9, 0xc2b9},
{0x00ba, 0xc2ba}, /* 80 */ 0xc280, 0xc281, 0xc282, 0xc283, 0xc284, 0xc285, 0xc286, 0xc287,
{0x00bb, 0xc2bb}, /* 88 */ 0xc288, 0xc289, 0xc28a, 0xc28b, 0xc28c, 0xc28d, 0xc28e, 0xc28f,
{0x00bc, 0xc2bc}, /* 90 */ 0xc290, 0xc291, 0xc292, 0xc293, 0xc294, 0xc295, 0xc296, 0xc297,
{0x00bd, 0xc2bd}, /* 98 */ 0xc298, 0xc299, 0xc29a, 0xc29b, 0xc29c, 0xc29d, 0xc29e, 0xc29f,
{0x00be, 0xc2be}, /* a0 */ 0xc2a0, 0xc2a1, 0xc2a2, 0xc2a3, 0xc2a4, 0xc2a5, 0xc2a6, 0xc2a7,
{0x00bf, 0xc2bf}, /* a8 */ 0xc2a8, 0xc2a9, 0xc2aa, 0xc2ab, 0xc2ac, 0xc2ad, 0xc2ae, 0xc2af,
{0x00c0, 0xc380}, /* b0 */ 0xc2b0, 0xc2b1, 0xc2b2, 0xc2b3, 0xc2b4, 0xc2b5, 0xc2b6, 0xc2b7,
{0x00c1, 0xc381}, /* b8 */ 0xc2b8, 0xc2b9, 0xc2ba, 0xc2bb, 0xc2bc, 0xc2bd, 0xc2be, 0xc2bf,
{0x00c2, 0xc382}, /* c0 */ 0xc380, 0xc381, 0xc382, 0xc383, 0xc384, 0xc385, 0xc386, 0xc387,
{0x00c3, 0xc383}, /* c8 */ 0xc388, 0xc389, 0xc38a, 0xc38b, 0xc38c, 0xc38d, 0xc38e, 0xc38f,
{0x00c4, 0xc384}, /* d0 */ 0xc49e, 0xc391, 0xc392, 0xc393, 0xc394, 0xc395, 0xc396, 0xc397,
{0x00c5, 0xc385}, /* d8 */ 0xc398, 0xc399, 0xc39a, 0xc39b, 0xc39c, 0xc4b0, 0xc59e, 0xc39f,
{0x00c6, 0xc386}, /* e0 */ 0xc3a0, 0xc3a1, 0xc3a2, 0xc3a3, 0xc3a4, 0xc3a5, 0xc3a6, 0xc3a7,
{0x00c7, 0xc387}, /* e8 */ 0xc3a8, 0xc3a9, 0xc3aa, 0xc3ab, 0xc3ac, 0xc3ad, 0xc3ae, 0xc3af,
{0x00c8, 0xc388}, /* f0 */ 0xc49f, 0xc3b1, 0xc3b2, 0xc3b3, 0xc3b4, 0xc3b5, 0xc3b6, 0xc3b7,
{0x00c9, 0xc389}, /* f8 */ 0xc3b8, 0xc3b9, 0xc3ba, 0xc3bb, 0xc3bc, 0xc4b1, 0xc59f, 0xc3bf
{0x00ca, 0xc38a},
{0x00cb, 0xc38b},
{0x00cc, 0xc38c},
{0x00cd, 0xc38d},
{0x00ce, 0xc38e},
{0x00cf, 0xc38f},
{0x00d0, 0xc49e},
{0x00d1, 0xc391},
{0x00d2, 0xc392},
{0x00d3, 0xc393},
{0x00d4, 0xc394},
{0x00d5, 0xc395},
{0x00d6, 0xc396},
{0x00d7, 0xc397},
{0x00d8, 0xc398},
{0x00d9, 0xc399},
{0x00da, 0xc39a},
{0x00db, 0xc39b},
{0x00dc, 0xc39c},
{0x00dd, 0xc4b0},
{0x00de, 0xc59e},
{0x00df, 0xc39f},
{0x00e0, 0xc3a0},
{0x00e1, 0xc3a1},
{0x00e2, 0xc3a2},
{0x00e3, 0xc3a3},
{0x00e4, 0xc3a4},
{0x00e5, 0xc3a5},
{0x00e6, 0xc3a6},
{0x00e7, 0xc3a7},
{0x00e8, 0xc3a8},
{0x00e9, 0xc3a9},
{0x00ea, 0xc3aa},
{0x00eb, 0xc3ab},
{0x00ec, 0xc3ac},
{0x00ed, 0xc3ad},
{0x00ee, 0xc3ae},
{0x00ef, 0xc3af},
{0x00f0, 0xc49f},
{0x00f1, 0xc3b1},
{0x00f2, 0xc3b2},
{0x00f3, 0xc3b3},
{0x00f4, 0xc3b4},
{0x00f5, 0xc3b5},
{0x00f6, 0xc3b6},
{0x00f7, 0xc3b7},
{0x00f8, 0xc3b8},
{0x00f9, 0xc3b9},
{0x00fa, 0xc3ba},
{0x00fb, 0xc3bb},
{0x00fc, 0xc3bc},
{0x00fd, 0xc4b1},
{0x00fe, 0xc59f},
{0x00ff, 0xc3bf}
}; };
/* src/backend/utils/mb/Unicode/koi8r_to_utf8.map */ /* src/backend/utils/mb/Unicode/koi8r_to_utf8.map */
/* This file is generated by UCS_to_most.pl */
static const pg_local_to_utf LUmapKOI8R[ 128 ] = { static const uint32 koi8r_to_unicode_tree_table[];
{0x0080, 0xe29480},
{0x0081, 0xe29482}, static const pg_mb_radix_tree koi8r_to_unicode_tree =
{0x0082, 0xe2948c}, {
{0x0083, 0xe29490}, NULL, /* 16-bit table not used */
{0x0084, 0xe29494}, koi8r_to_unicode_tree_table,
{0x0085, 0xe29498},
{0x0086, 0xe2949c}, 0x0080, /* offset of table for 1-byte inputs */
{0x0087, 0xe294a4}, 0x80, /* b1_lower */
{0x0088, 0xe294ac}, 0xff, /* b1_upper */
{0x0089, 0xe294b4},
{0x008a, 0xe294bc}, 0x0000, /* offset of table for 2-byte inputs */
{0x008b, 0xe29680}, 0x00, /* b2_1_lower */
{0x008c, 0xe29684}, 0x00, /* b2_1_upper */
{0x008d, 0xe29688}, 0x00, /* b2_2_lower */
{0x008e, 0xe2968c}, 0x00, /* b2_2_upper */
{0x008f, 0xe29690},
{0x0090, 0xe29691}, 0x0000, /* offset of table for 3-byte inputs */
{0x0091, 0xe29692}, 0x00, /* b3_1_lower */
{0x0092, 0xe29693}, 0x00, /* b3_1_upper */
{0x0093, 0xe28ca0}, 0x00, /* b3_2_lower */
{0x0094, 0xe296a0}, 0x00, /* b3_2_upper */
{0x0095, 0xe28899}, 0x00, /* b3_3_lower */
{0x0096, 0xe2889a}, 0x00, /* b3_3_upper */
{0x0097, 0xe28988},
{0x0098, 0xe289a4}, 0x0000, /* offset of table for 3-byte inputs */
{0x0099, 0xe289a5}, 0x00, /* b4_1_lower */
{0x009a, 0xc2a0}, 0x00, /* b4_1_upper */
{0x009b, 0xe28ca1}, 0x00, /* b4_2_lower */
{0x009c, 0xc2b0}, 0x00, /* b4_2_upper */
{0x009d, 0xc2b2}, 0x00, /* b4_3_lower */
{0x009e, 0xc2b7}, 0x00, /* b4_3_upper */
{0x009f, 0xc3b7}, 0x00, /* b4_4_lower */
{0x00a0, 0xe29590}, 0x00 /* b4_4_upper */
{0x00a1, 0xe29591}, };
{0x00a2, 0xe29592},
{0x00a3, 0xd191}, static const uint32 koi8r_to_unicode_tree_table[256] =
{0x00a4, 0xe29593}, {
{0x00a5, 0xe29594}, /*** Dummy map, for invalid values - offset 0x00000 ***/
{0x00a6, 0xe29595},
{0x00a7, 0xe29596}, /* 00 */ 0x000000, 0x000000, 0x000000, 0x000000,
{0x00a8, 0xe29597}, /* 04 */ 0x000000, 0x000000, 0x000000, 0x000000,
{0x00a9, 0xe29598}, /* 08 */ 0x000000, 0x000000, 0x000000, 0x000000,
{0x00aa, 0xe29599}, /* 0c */ 0x000000, 0x000000, 0x000000, 0x000000,
{0x00ab, 0xe2959a}, /* 10 */ 0x000000, 0x000000, 0x000000, 0x000000,
{0x00ac, 0xe2959b}, /* 14 */ 0x000000, 0x000000, 0x000000, 0x000000,
{0x00ad, 0xe2959c}, /* 18 */ 0x000000, 0x000000, 0x000000, 0x000000,
{0x00ae, 0xe2959d}, /* 1c */ 0x000000, 0x000000, 0x000000, 0x000000,
{0x00af, 0xe2959e}, /* 20 */ 0x000000, 0x000000, 0x000000, 0x000000,
{0x00b0, 0xe2959f}, /* 24 */ 0x000000, 0x000000, 0x000000, 0x000000,
{0x00b1, 0xe295a0}, /* 28 */ 0x000000, 0x000000, 0x000000, 0x000000,
{0x00b2, 0xe295a1}, /* 2c */ 0x000000, 0x000000, 0x000000, 0x000000,
{0x00b3, 0xd081}, /* 30 */ 0x000000, 0x000000, 0x000000, 0x000000,
{0x00b4, 0xe295a2}, /* 34 */ 0x000000, 0x000000, 0x000000, 0x000000,
{0x00b5, 0xe295a3}, /* 38 */ 0x000000, 0x000000, 0x000000, 0x000000,
{0x00b6, 0xe295a4}, /* 3c */ 0x000000, 0x000000, 0x000000, 0x000000,
{0x00b7, 0xe295a5}, /* 40 */ 0x000000, 0x000000, 0x000000, 0x000000,
{0x00b8, 0xe295a6}, /* 44 */ 0x000000, 0x000000, 0x000000, 0x000000,
{0x00b9, 0xe295a7}, /* 48 */ 0x000000, 0x000000, 0x000000, 0x000000,
{0x00ba, 0xe295a8}, /* 4c */ 0x000000, 0x000000, 0x000000, 0x000000,
{0x00bb, 0xe295a9}, /* 50 */ 0x000000, 0x000000, 0x000000, 0x000000,
{0x00bc, 0xe295aa}, /* 54 */ 0x000000, 0x000000, 0x000000, 0x000000,
{0x00bd, 0xe295ab}, /* 58 */ 0x000000, 0x000000, 0x000000, 0x000000,
{0x00be, 0xe295ac}, /* 5c */ 0x000000, 0x000000, 0x000000, 0x000000,
{0x00bf, 0xc2a9}, /* 60 */ 0x000000, 0x000000, 0x000000, 0x000000,
{0x00c0, 0xd18e}, /* 64 */ 0x000000, 0x000000, 0x000000, 0x000000,
{0x00c1, 0xd0b0}, /* 68 */ 0x000000, 0x000000, 0x000000, 0x000000,
{0x00c2, 0xd0b1}, /* 6c */ 0x000000, 0x000000, 0x000000, 0x000000,
{0x00c3, 0xd186}, /* 70 */ 0x000000, 0x000000, 0x000000, 0x000000,
{0x00c4, 0xd0b4}, /* 74 */ 0x000000, 0x000000, 0x000000, 0x000000,
{0x00c5, 0xd0b5}, /* 78 */ 0x000000, 0x000000, 0x000000, 0x000000,
{0x00c6, 0xd184}, /* 7c */ 0x000000, 0x000000, 0x000000, 0x000000,
{0x00c7, 0xd0b3},
{0x00c8, 0xd185}, /*** Single byte table, leaf: xx - offset 0x00080 ***/
{0x00c9, 0xd0b8},
{0x00ca, 0xd0b9}, /* 80 */ 0xe29480, 0xe29482, 0xe2948c, 0xe29490,
{0x00cb, 0xd0ba}, /* 84 */ 0xe29494, 0xe29498, 0xe2949c, 0xe294a4,
{0x00cc, 0xd0bb}, /* 88 */ 0xe294ac, 0xe294b4, 0xe294bc, 0xe29680,
{0x00cd, 0xd0bc}, /* 8c */ 0xe29684, 0xe29688, 0xe2968c, 0xe29690,
{0x00ce, 0xd0bd}, /* 90 */ 0xe29691, 0xe29692, 0xe29693, 0xe28ca0,
{0x00cf, 0xd0be}, /* 94 */ 0xe296a0, 0xe28899, 0xe2889a, 0xe28988,
{0x00d0, 0xd0bf}, /* 98 */ 0xe289a4, 0xe289a5, 0x00c2a0, 0xe28ca1,
{0x00d1, 0xd18f}, /* 9c */ 0x00c2b0, 0x00c2b2, 0x00c2b7, 0x00c3b7,
{0x00d2, 0xd180}, /* a0 */ 0xe29590, 0xe29591, 0xe29592, 0x00d191,
{0x00d3, 0xd181}, /* a4 */ 0xe29593, 0xe29594, 0xe29595, 0xe29596,
{0x00d4, 0xd182}, /* a8 */ 0xe29597, 0xe29598, 0xe29599, 0xe2959a,
{0x00d5, 0xd183}, /* ac */ 0xe2959b, 0xe2959c, 0xe2959d, 0xe2959e,
{0x00d6, 0xd0b6}, /* b0 */ 0xe2959f, 0xe295a0, 0xe295a1, 0x00d081,
{0x00d7, 0xd0b2}, /* b4 */ 0xe295a2, 0xe295a3, 0xe295a4, 0xe295a5,
{0x00d8, 0xd18c}, /* b8 */ 0xe295a6, 0xe295a7, 0xe295a8, 0xe295a9,
{0x00d9, 0xd18b}, /* bc */ 0xe295aa, 0xe295ab, 0xe295ac, 0x00c2a9,
{0x00da, 0xd0b7}, /* c0 */ 0x00d18e, 0x00d0b0, 0x00d0b1, 0x00d186,
{0x00db, 0xd188}, /* c4 */ 0x00d0b4, 0x00d0b5, 0x00d184, 0x00d0b3,
{0x00dc, 0xd18d}, /* c8 */ 0x00d185, 0x00d0b8, 0x00d0b9, 0x00d0ba,
{0x00dd, 0xd189}, /* cc */ 0x00d0bb, 0x00d0bc, 0x00d0bd, 0x00d0be,
{0x00de, 0xd187}, /* d0 */ 0x00d0bf, 0x00d18f, 0x00d180, 0x00d181,
{0x00df, 0xd18a}, /* d4 */ 0x00d182, 0x00d183, 0x00d0b6, 0x00d0b2,
{0x00e0, 0xd0ae}, /* d8 */ 0x00d18c, 0x00d18b, 0x00d0b7, 0x00d188,
{0x00e1, 0xd090}, /* dc */ 0x00d18d, 0x00d189, 0x00d187, 0x00d18a,
{0x00e2, 0xd091}, /* e0 */ 0x00d0ae, 0x00d090, 0x00d091, 0x00d0a6,
{0x00e3, 0xd0a6}, /* e4 */ 0x00d094, 0x00d095, 0x00d0a4, 0x00d093,
{0x00e4, 0xd094}, /* e8 */ 0x00d0a5, 0x00d098, 0x00d099, 0x00d09a,
{0x00e5, 0xd095}, /* ec */ 0x00d09b, 0x00d09c, 0x00d09d, 0x00d09e,
{0x00e6, 0xd0a4}, /* f0 */ 0x00d09f, 0x00d0af, 0x00d0a0, 0x00d0a1,
{0x00e7, 0xd093}, /* f4 */ 0x00d0a2, 0x00d0a3, 0x00d096, 0x00d092,
{0x00e8, 0xd0a5}, /* f8 */ 0x00d0ac, 0x00d0ab, 0x00d097, 0x00d0a8,
{0x00e9, 0xd098}, /* fc */ 0x00d0ad, 0x00d0a9, 0x00d0a7, 0x00d0aa
{0x00ea, 0xd099},
{0x00eb, 0xd09a},
{0x00ec, 0xd09b},
{0x00ed, 0xd09c},
{0x00ee, 0xd09d},
{0x00ef, 0xd09e},
{0x00f0, 0xd09f},
{0x00f1, 0xd0af},
{0x00f2, 0xd0a0},
{0x00f3, 0xd0a1},
{0x00f4, 0xd0a2},
{0x00f5, 0xd0a3},
{0x00f6, 0xd096},
{0x00f7, 0xd092},
{0x00f8, 0xd0ac},
{0x00f9, 0xd0ab},
{0x00fa, 0xd097},
{0x00fb, 0xd0a8},
{0x00fc, 0xd0ad},
{0x00fd, 0xd0a9},
{0x00fe, 0xd0a7},
{0x00ff, 0xd0aa}
}; };
/* src/backend/utils/mb/Unicode/koi8u_to_utf8.map */ /* src/backend/utils/mb/Unicode/koi8u_to_utf8.map */
/* This file is generated by UCS_to_most.pl */
static const pg_local_to_utf LUmapKOI8U[ 128 ] = { static const uint32 koi8u_to_unicode_tree_table[];
{0x0080, 0xe29480},
{0x0081, 0xe29482}, static const pg_mb_radix_tree koi8u_to_unicode_tree =
{0x0082, 0xe2948c}, {
{0x0083, 0xe29490}, NULL, /* 16-bit table not used */
{0x0084, 0xe29494}, koi8u_to_unicode_tree_table,
{0x0085, 0xe29498},
{0x0086, 0xe2949c}, 0x0080, /* offset of table for 1-byte inputs */
{0x0087, 0xe294a4}, 0x80, /* b1_lower */
{0x0088, 0xe294ac}, 0xff, /* b1_upper */
{0x0089, 0xe294b4},
{0x008a, 0xe294bc}, 0x0000, /* offset of table for 2-byte inputs */
{0x008b, 0xe29680}, 0x00, /* b2_1_lower */
{0x008c, 0xe29684}, 0x00, /* b2_1_upper */
{0x008d, 0xe29688}, 0x00, /* b2_2_lower */
{0x008e, 0xe2968c}, 0x00, /* b2_2_upper */
{0x008f, 0xe29690},
{0x0090, 0xe29691}, 0x0000, /* offset of table for 3-byte inputs */
{0x0091, 0xe29692}, 0x00, /* b3_1_lower */
{0x0092, 0xe29693}, 0x00, /* b3_1_upper */
{0x0093, 0xe28ca0}, 0x00, /* b3_2_lower */
{0x0094, 0xe296a0}, 0x00, /* b3_2_upper */
{0x0095, 0xe28899}, 0x00, /* b3_3_lower */
{0x0096, 0xe2889a}, 0x00, /* b3_3_upper */
{0x0097, 0xe28988},
{0x0098, 0xe289a4}, 0x0000, /* offset of table for 3-byte inputs */
{0x0099, 0xe289a5}, 0x00, /* b4_1_lower */
{0x009a, 0xc2a0}, 0x00, /* b4_1_upper */
{0x009b, 0xe28ca1}, 0x00, /* b4_2_lower */
{0x009c, 0xc2b0}, 0x00, /* b4_2_upper */
{0x009d, 0xc2b2}, 0x00, /* b4_3_lower */
{0x009e, 0xc2b7}, 0x00, /* b4_3_upper */
{0x009f, 0xc3b7}, 0x00, /* b4_4_lower */
{0x00a0, 0xe29590}, 0x00 /* b4_4_upper */
{0x00a1, 0xe29591}, };
{0x00a2, 0xe29592},
{0x00a3, 0xd191}, static const uint32 koi8u_to_unicode_tree_table[256] =
{0x00a4, 0xd194}, {
{0x00a5, 0xe29594}, /*** Dummy map, for invalid values - offset 0x00000 ***/
{0x00a6, 0xd196},
{0x00a7, 0xd197}, /* 00 */ 0x000000, 0x000000, 0x000000, 0x000000,
{0x00a8, 0xe29597}, /* 04 */ 0x000000, 0x000000, 0x000000, 0x000000,
{0x00a9, 0xe29598}, /* 08 */ 0x000000, 0x000000, 0x000000, 0x000000,
{0x00aa, 0xe29599}, /* 0c */ 0x000000, 0x000000, 0x000000, 0x000000,
{0x00ab, 0xe2959a}, /* 10 */ 0x000000, 0x000000, 0x000000, 0x000000,
{0x00ac, 0xe2959b}, /* 14 */ 0x000000, 0x000000, 0x000000, 0x000000,
{0x00ad, 0xd291}, /* 18 */ 0x000000, 0x000000, 0x000000, 0x000000,
{0x00ae, 0xe2959d}, /* 1c */ 0x000000, 0x000000, 0x000000, 0x000000,
{0x00af, 0xe2959e}, /* 20 */ 0x000000, 0x000000, 0x000000, 0x000000,
{0x00b0, 0xe2959f}, /* 24 */ 0x000000, 0x000000, 0x000000, 0x000000,
{0x00b1, 0xe295a0}, /* 28 */ 0x000000, 0x000000, 0x000000, 0x000000,
{0x00b2, 0xe295a1}, /* 2c */ 0x000000, 0x000000, 0x000000, 0x000000,
{0x00b3, 0xd081}, /* 30 */ 0x000000, 0x000000, 0x000000, 0x000000,
{0x00b4, 0xd084}, /* 34 */ 0x000000, 0x000000, 0x000000, 0x000000,
{0x00b5, 0xe295a3}, /* 38 */ 0x000000, 0x000000, 0x000000, 0x000000,
{0x00b6, 0xd086}, /* 3c */ 0x000000, 0x000000, 0x000000, 0x000000,
{0x00b7, 0xd087}, /* 40 */ 0x000000, 0x000000, 0x000000, 0x000000,
{0x00b8, 0xe295a6}, /* 44 */ 0x000000, 0x000000, 0x000000, 0x000000,
{0x00b9, 0xe295a7}, /* 48 */ 0x000000, 0x000000, 0x000000, 0x000000,
{0x00ba, 0xe295a8}, /* 4c */ 0x000000, 0x000000, 0x000000, 0x000000,
{0x00bb, 0xe295a9}, /* 50 */ 0x000000, 0x000000, 0x000000, 0x000000,
{0x00bc, 0xe295aa}, /* 54 */ 0x000000, 0x000000, 0x000000, 0x000000,
{0x00bd, 0xd290}, /* 58 */ 0x000000, 0x000000, 0x000000, 0x000000,
{0x00be, 0xe295ac}, /* 5c */ 0x000000, 0x000000, 0x000000, 0x000000,
{0x00bf, 0xc2a9}, /* 60 */ 0x000000, 0x000000, 0x000000, 0x000000,
{0x00c0, 0xd18e}, /* 64 */ 0x000000, 0x000000, 0x000000, 0x000000,
{0x00c1, 0xd0b0}, /* 68 */ 0x000000, 0x000000, 0x000000, 0x000000,
{0x00c2, 0xd0b1}, /* 6c */ 0x000000, 0x000000, 0x000000, 0x000000,
{0x00c3, 0xd186}, /* 70 */ 0x000000, 0x000000, 0x000000, 0x000000,
{0x00c4, 0xd0b4}, /* 74 */ 0x000000, 0x000000, 0x000000, 0x000000,
{0x00c5, 0xd0b5}, /* 78 */ 0x000000, 0x000000, 0x000000, 0x000000,
{0x00c6, 0xd184}, /* 7c */ 0x000000, 0x000000, 0x000000, 0x000000,
{0x00c7, 0xd0b3},
{0x00c8, 0xd185}, /*** Single byte table, leaf: xx - offset 0x00080 ***/
{0x00c9, 0xd0b8},
{0x00ca, 0xd0b9}, /* 80 */ 0xe29480, 0xe29482, 0xe2948c, 0xe29490,
{0x00cb, 0xd0ba}, /* 84 */ 0xe29494, 0xe29498, 0xe2949c, 0xe294a4,
{0x00cc, 0xd0bb}, /* 88 */ 0xe294ac, 0xe294b4, 0xe294bc, 0xe29680,
{0x00cd, 0xd0bc}, /* 8c */ 0xe29684, 0xe29688, 0xe2968c, 0xe29690,
{0x00ce, 0xd0bd}, /* 90 */ 0xe29691, 0xe29692, 0xe29693, 0xe28ca0,
{0x00cf, 0xd0be}, /* 94 */ 0xe296a0, 0xe28899, 0xe2889a, 0xe28988,
{0x00d0, 0xd0bf}, /* 98 */ 0xe289a4, 0xe289a5, 0x00c2a0, 0xe28ca1,
{0x00d1, 0xd18f}, /* 9c */ 0x00c2b0, 0x00c2b2, 0x00c2b7, 0x00c3b7,
{0x00d2, 0xd180}, /* a0 */ 0xe29590, 0xe29591, 0xe29592, 0x00d191,
{0x00d3, 0xd181}, /* a4 */ 0x00d194, 0xe29594, 0x00d196, 0x00d197,
{0x00d4, 0xd182}, /* a8 */ 0xe29597, 0xe29598, 0xe29599, 0xe2959a,
{0x00d5, 0xd183}, /* ac */ 0xe2959b, 0x00d291, 0xe2959d, 0xe2959e,
{0x00d6, 0xd0b6}, /* b0 */ 0xe2959f, 0xe295a0, 0xe295a1, 0x00d081,
{0x00d7, 0xd0b2}, /* b4 */ 0x00d084, 0xe295a3, 0x00d086, 0x00d087,
{0x00d8, 0xd18c}, /* b8 */ 0xe295a6, 0xe295a7, 0xe295a8, 0xe295a9,
{0x00d9, 0xd18b}, /* bc */ 0xe295aa, 0x00d290, 0xe295ac, 0x00c2a9,
{0x00da, 0xd0b7}, /* c0 */ 0x00d18e, 0x00d0b0, 0x00d0b1, 0x00d186,
{0x00db, 0xd188}, /* c4 */ 0x00d0b4, 0x00d0b5, 0x00d184, 0x00d0b3,
{0x00dc, 0xd18d}, /* c8 */ 0x00d185, 0x00d0b8, 0x00d0b9, 0x00d0ba,
{0x00dd, 0xd189}, /* cc */ 0x00d0bb, 0x00d0bc, 0x00d0bd, 0x00d0be,
{0x00de, 0xd187}, /* d0 */ 0x00d0bf, 0x00d18f, 0x00d180, 0x00d181,
{0x00df, 0xd18a}, /* d4 */ 0x00d182, 0x00d183, 0x00d0b6, 0x00d0b2,
{0x00e0, 0xd0ae}, /* d8 */ 0x00d18c, 0x00d18b, 0x00d0b7, 0x00d188,
{0x00e1, 0xd090}, /* dc */ 0x00d18d, 0x00d189, 0x00d187, 0x00d18a,
{0x00e2, 0xd091}, /* e0 */ 0x00d0ae, 0x00d090, 0x00d091, 0x00d0a6,
{0x00e3, 0xd0a6}, /* e4 */ 0x00d094, 0x00d095, 0x00d0a4, 0x00d093,
{0x00e4, 0xd094}, /* e8 */ 0x00d0a5, 0x00d098, 0x00d099, 0x00d09a,
{0x00e5, 0xd095}, /* ec */ 0x00d09b, 0x00d09c, 0x00d09d, 0x00d09e,
{0x00e6, 0xd0a4}, /* f0 */ 0x00d09f, 0x00d0af, 0x00d0a0, 0x00d0a1,
{0x00e7, 0xd093}, /* f4 */ 0x00d0a2, 0x00d0a3, 0x00d096, 0x00d092,
{0x00e8, 0xd0a5}, /* f8 */ 0x00d0ac, 0x00d0ab, 0x00d097, 0x00d0a8,
{0x00e9, 0xd098}, /* fc */ 0x00d0ad, 0x00d0a9, 0x00d0a7, 0x00d0aa
{0x00ea, 0xd099},
{0x00eb, 0xd09a},
{0x00ec, 0xd09b},
{0x00ed, 0xd09c},
{0x00ee, 0xd09d},
{0x00ef, 0xd09e},
{0x00f0, 0xd09f},
{0x00f1, 0xd0af},
{0x00f2, 0xd0a0},
{0x00f3, 0xd0a1},
{0x00f4, 0xd0a2},
{0x00f5, 0xd0a3},
{0x00f6, 0xd096},
{0x00f7, 0xd092},
{0x00f8, 0xd0ac},
{0x00f9, 0xd0ab},
{0x00fa, 0xd097},
{0x00fb, 0xd0a8},
{0x00fc, 0xd0ad},
{0x00fd, 0xd0a9},
{0x00fe, 0xd0a7},
{0x00ff, 0xd0aa}
}; };
/* src/backend/utils/mb/Unicode/shift_jis_2004_to_utf8_combined.map */
static const pg_local_to_utf_combined LUmapSHIFT_JIS_2004_combined[ 25 ] = { /* */
{0x82f5, 0x00e3818b, 0x00e3829a}, /* U+304B+309A [2000] */
{0x82f6, 0x00e3818d, 0x00e3829a}, /* U+304D+309A [2000] */
{0x82f7, 0x00e3818f, 0x00e3829a}, /* U+304F+309A [2000] */
{0x82f8, 0x00e38191, 0x00e3829a}, /* U+3051+309A [2000] */
{0x82f9, 0x00e38193, 0x00e3829a}, /* U+3053+309A [2000] */
{0x8397, 0x00e382ab, 0x00e3829a}, /* U+30AB+309A [2000] */
{0x8398, 0x00e382ad, 0x00e3829a}, /* U+30AD+309A [2000] */
{0x8399, 0x00e382af, 0x00e3829a}, /* U+30AF+309A [2000] */
{0x839a, 0x00e382b1, 0x00e3829a}, /* U+30B1+309A [2000] */
{0x839b, 0x00e382b3, 0x00e3829a}, /* U+30B3+309A [2000] */
{0x839c, 0x00e382bb, 0x00e3829a}, /* U+30BB+309A [2000] */
{0x839d, 0x00e38384, 0x00e3829a}, /* U+30C4+309A [2000] */
{0x839e, 0x00e38388, 0x00e3829a}, /* U+30C8+309A [2000] */
{0x83f6, 0x00e387b7, 0x00e3829a}, /* U+31F7+309A [2000] */
{0x8663, 0x0000c3a6, 0x0000cc80}, /* U+00E6+0300 [2000] */
{0x8667, 0x0000c994, 0x0000cc80}, /* U+0254+0300 [2000] */
{0x8668, 0x0000c994, 0x0000cc81}, /* U+0254+0301 [2000] */
{0x8669, 0x0000ca8c, 0x0000cc80}, /* U+028C+0300 [2000] */
{0x866a, 0x0000ca8c, 0x0000cc81}, /* U+028C+0301 [2000] */
{0x866b, 0x0000c999, 0x0000cc80}, /* U+0259+0300 [2000] */
{0x866c, 0x0000c999, 0x0000cc81}, /* U+0259+0301 [2000] */
{0x866d, 0x0000c99a, 0x0000cc80}, /* U+025A+0300 [2000] */
{0x866e, 0x0000c99a, 0x0000cc81}, /* U+025A+0301 [2000] */
{0x8685, 0x0000cba9, 0x0000cba5}, /* U+02E9+02E5 [2000] */
{0x8686, 0x0000cba5, 0x0000cba9} /* U+02E5+02E9 [2000] */
};
/* src/backend/utils/mb/Unicode/utf8_to_euc_jis_2004_combined.map */
static const pg_utf_to_local_combined ULmapEUC_JIS_2004_combined[ 25 ] = { /* */
{0x0000c3a6, 0x0000cc80, 0xabc4}, /* U+00E6+0300 [2000] */
{0x0000c994, 0x0000cc80, 0xabc8}, /* U+0254+0300 [2000] */
{0x0000c994, 0x0000cc81, 0xabc9}, /* U+0254+0301 [2000] */
{0x0000c999, 0x0000cc80, 0xabcc}, /* U+0259+0300 [2000] */
{0x0000c999, 0x0000cc81, 0xabcd}, /* U+0259+0301 [2000] */
{0x0000c99a, 0x0000cc80, 0xabce}, /* U+025A+0300 [2000] */
{0x0000c99a, 0x0000cc81, 0xabcf}, /* U+025A+0301 [2000] */
{0x0000ca8c, 0x0000cc80, 0xabca}, /* U+028C+0300 [2000] */
{0x0000ca8c, 0x0000cc81, 0xabcb}, /* U+028C+0301 [2000] */
{0x0000cba5, 0x0000cba9, 0xabe6}, /* U+02E5+02E9 [2000] */
{0x0000cba9, 0x0000cba5, 0xabe5}, /* U+02E9+02E5 [2000] */
{0x00e3818b, 0x00e3829a, 0xa4f7}, /* U+304B+309A [2000] */
{0x00e3818d, 0x00e3829a, 0xa4f8}, /* U+304D+309A [2000] */
{0x00e3818f, 0x00e3829a, 0xa4f9}, /* U+304F+309A [2000] */
{0x00e38191, 0x00e3829a, 0xa4fa}, /* U+3051+309A [2000] */
{0x00e38193, 0x00e3829a, 0xa4fb}, /* U+3053+309A [2000] */
{0x00e382ab, 0x00e3829a, 0xa5f7}, /* U+30AB+309A [2000] */
{0x00e382ad, 0x00e3829a, 0xa5f8}, /* U+30AD+309A [2000] */
{0x00e382af, 0x00e3829a, 0xa5f9}, /* U+30AF+309A [2000] */
{0x00e382b1, 0x00e3829a, 0xa5fa}, /* U+30B1+309A [2000] */
{0x00e382b3, 0x00e3829a, 0xa5fb}, /* U+30B3+309A [2000] */
{0x00e382bb, 0x00e3829a, 0xa5fc}, /* U+30BB+309A [2000] */
{0x00e38384, 0x00e3829a, 0xa5fd}, /* U+30C4+309A [2000] */
{0x00e38388, 0x00e3829a, 0xa5fe}, /* U+30C8+309A [2000] */
{0x00e387b7, 0x00e3829a, 0xa6f8} /* U+31F7+309A [2000] */
};
/* src/backend/utils/mb/Unicode/utf8_to_shift_jis_2004_combined.map */
static const pg_utf_to_local_combined ULmapSHIFT_JIS_2004_combined[ 25 ] = { /* */
{0x0000c3a6, 0x0000cc80, 0x8663}, /* U+00E6+0300 [2000] */
{0x0000c994, 0x0000cc80, 0x8667}, /* U+0254+0300 [2000] */
{0x0000c994, 0x0000cc81, 0x8668}, /* U+0254+0301 [2000] */
{0x0000c999, 0x0000cc80, 0x866b}, /* U+0259+0300 [2000] */
{0x0000c999, 0x0000cc81, 0x866c}, /* U+0259+0301 [2000] */
{0x0000c99a, 0x0000cc80, 0x866d}, /* U+025A+0300 [2000] */
{0x0000c99a, 0x0000cc81, 0x866e}, /* U+025A+0301 [2000] */
{0x0000ca8c, 0x0000cc80, 0x8669}, /* U+028C+0300 [2000] */
{0x0000ca8c, 0x0000cc81, 0x866a}, /* U+028C+0301 [2000] */
{0x0000cba5, 0x0000cba9, 0x8686}, /* U+02E5+02E9 [2000] */
{0x0000cba9, 0x0000cba5, 0x8685}, /* U+02E9+02E5 [2000] */
{0x00e3818b, 0x00e3829a, 0x82f5}, /* U+304B+309A [2000] */
{0x00e3818d, 0x00e3829a, 0x82f6}, /* U+304D+309A [2000] */
{0x00e3818f, 0x00e3829a, 0x82f7}, /* U+304F+309A [2000] */
{0x00e38191, 0x00e3829a, 0x82f8}, /* U+3051+309A [2000] */
{0x00e38193, 0x00e3829a, 0x82f9}, /* U+3053+309A [2000] */
{0x00e382ab, 0x00e3829a, 0x8397}, /* U+30AB+309A [2000] */
{0x00e382ad, 0x00e3829a, 0x8398}, /* U+30AD+309A [2000] */
{0x00e382af, 0x00e3829a, 0x8399}, /* U+30AF+309A [2000] */
{0x00e382b1, 0x00e3829a, 0x839a}, /* U+30B1+309A [2000] */
{0x00e382b3, 0x00e3829a, 0x839b}, /* U+30B3+309A [2000] */
{0x00e382bb, 0x00e3829a, 0x839c}, /* U+30BB+309A [2000] */
{0x00e38384, 0x00e3829a, 0x839d}, /* U+30C4+309A [2000] */
{0x00e38388, 0x00e3829a, 0x839e}, /* U+30C8+309A [2000] */
{0x00e387b7, 0x00e3829a, 0x83f6} /* U+31F7+309A [2000] */
};
This diff is collapsed.
...@@ -42,7 +42,7 @@ big5_to_utf8(PG_FUNCTION_ARGS) ...@@ -42,7 +42,7 @@ big5_to_utf8(PG_FUNCTION_ARGS)
CHECK_ENCODING_CONVERSION_ARGS(PG_BIG5, PG_UTF8); CHECK_ENCODING_CONVERSION_ARGS(PG_BIG5, PG_UTF8);
LocalToUtf(src, len, dest, LocalToUtf(src, len, dest,
LUmapBIG5, lengthof(LUmapBIG5), &big5_to_unicode_tree,
NULL, 0, NULL, 0,
NULL, NULL,
PG_BIG5); PG_BIG5);
...@@ -60,7 +60,7 @@ utf8_to_big5(PG_FUNCTION_ARGS) ...@@ -60,7 +60,7 @@ utf8_to_big5(PG_FUNCTION_ARGS)
CHECK_ENCODING_CONVERSION_ARGS(PG_UTF8, PG_BIG5); CHECK_ENCODING_CONVERSION_ARGS(PG_UTF8, PG_BIG5);
UtfToLocal(src, len, dest, UtfToLocal(src, len, dest,
ULmapBIG5, lengthof(ULmapBIG5), &big5_from_unicode_tree,
NULL, 0, NULL, 0,
NULL, NULL,
PG_BIG5); PG_BIG5);
......
This diff is collapsed.
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment