summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorKarl Williamson <public@khwilliamson.com>2011-03-03 17:48:04 -0700
committerKarl Williamson <public@khwilliamson.com>2011-03-03 19:26:16 -0700
commitfcf1973cc859c6bebd1a7cdf8740f690f33617a1 (patch)
treefe7a45ebb294c17fc3e774d8cef09c1bfaa34be0
parent6c0259ad7f0bfd1649f9df7e74facc87075433a7 (diff)
downloadperl-fcf1973cc859c6bebd1a7cdf8740f690f33617a1.tar.gz
mktables: Add override for map tables output
This adds a hash so can more precisely control which map tables get output and which are documented. The hash is populated to suppress some messages and some tables that are redundant.
-rw-r--r--lib/unicore/mktables18
1 files changed, 18 insertions, 0 deletions
diff --git a/lib/unicore/mktables b/lib/unicore/mktables
index c468bacd9a..bd0461a3b6 100644
--- a/lib/unicore/mktables
+++ b/lib/unicore/mktables
@@ -843,6 +843,22 @@ if ($v_version ge v5.2.0) {
my $EXTERNAL_MAP = 1;
my $INTERNAL_MAP = 2;
+# To override computed values for writing the map tables for these properties.
+# The default for enum map tables is to write them out, so that the Unicode
+# .txt files can be removed, but all the data to compute any property value
+# for any code point is available in a more compact form.
+my %global_to_output_map = (
+ # Needed by UCD.pm, but don't want to publicize that it exists, so won't
+ # get stuck supporting it if things change. Sinc it is a STRING property,
+ # it normally would be listed in the pod, but INTERNAL_MAP suppresses
+ # that.
+ Unicode_1_Name => $INTERNAL_MAP,
+
+ Present_In => 0, # Suppress, as easily computed from Age
+ Canonical_Combining_Class => 0, # Duplicate of CombiningClass.pl
+ Block => 0, # Suppress, as Blocks.txt is retained.
+);
+
# Properties that this program ignores.
my @unimplemented_properties = (
'Unicode_Radical_Stroke' # Remove if changing to handle this one.
@@ -5580,6 +5596,8 @@ sub trace { return main::trace(@_); }
return $to_output_map{$addr} if defined $to_output_map{$addr};
my $full_name = $self->full_name;
+ return $global_to_output_map{$full_name}
+ if defined $global_to_output_map{$full_name};
# If table says to output, do so; if says to suppress it, do so.
return $EXTERNAL_MAP if grep { $_ eq $full_name } @output_mapped_properties;