This is a live mirror of the Perl 5 development currently hosted at https://github.com/perl/perl5
mktables: Small performance enhancement
authorKarl Williamson <public@khwilliamson.com>
Wed, 5 Jan 2011 00:01:09 +0000 (17:01 -0700)
committerKarl Williamson <public@khwilliamson.com>
Wed, 5 Jan 2011 00:04:48 +0000 (17:04 -0700)
Instead of generating a separate list of missing ranges in a table, it's
less work to use the fill-in the missing ranges feature.

lib/unicore/mktables

index d97b12b..4fe86e5 100644 (file)
@@ -11031,9 +11031,10 @@ sub finish_Unicode() {
         # Add any remaining code points to the mapping, using the default for
         # missing code points.
         if (defined (my $default_map = $property->default_map)) {
         # Add any remaining code points to the mapping, using the default for
         # missing code points.
         if (defined (my $default_map = $property->default_map)) {
-            foreach my $range ($property->inverse_list->ranges) {
-                $property->add_map($range->start, $range->end, $default_map);
-            }
+
+            # This fills in any missing values with the default.
+            $property->add_map(0, $LAST_UNICODE_CODEPOINT,
+                               $default_map, Replace => $NO);
 
             # Make sure there is a match table for the default
             if (! defined $property->table($default_map)) {
 
             # Make sure there is a match table for the default
             if (! defined $property->table($default_map)) {