Add tables for CWCF, CWL, and CWU.
authorChris Hanson <org/chris-hanson/cph>
Sun, 12 Feb 2017 01:21:13 +0000 (17:21 -0800)
committerChris Hanson <org/chris-hanson/cph>
Sun, 12 Feb 2017 01:21:13 +0000 (17:21 -0800)
src/etc/ucd-converter.scm
src/runtime/runtime.pkg
src/runtime/ucd-table-cwcf.scm [new file with mode: 0644]
src/runtime/ucd-table-cwl.scm [new file with mode: 0644]
src/runtime/ucd-table-cwu.scm [new file with mode: 0644]

index e8f890ca9f85c80880ee71a3c90a2542ffb524b8..fb1473c976da0ff9aeb584b04f933bc45c0a0b5b 100644 (file)
@@ -390,6 +390,9 @@ USA.
 (define (generate-standard-property-tables)
   (for-each generate-property-table
            '("Alpha"
+             "CWCF"
+             "CWL"
+             "CWU"
              "Lower"
              "Upper"
              "WSpace"
index c96e3fb89b77c84636e30e162913f21e74b6b171..d0ffc2e942688840ce3f79ae82375909cbc93e54 100644 (file)
@@ -1409,6 +1409,9 @@ USA.
 (define-package (runtime ucd-tables)
   (files "ucd-table-alpha"
         "ucd-table-cf"
+        "ucd-table-cwcf"
+        "ucd-table-cwl"
+        "ucd-table-cwu"
         "ucd-table-gc"
         "ucd-table-lc"
         "ucd-table-lower"
@@ -1423,10 +1426,16 @@ USA.
   (parent (runtime))
   (export ()
          char-alphabetic?
+         char-changes-when-case-folded?
+         char-changes-when-lower-cased?
+         char-changes-when-upper-cased?
          char-lower-case?
          char-upper-case?
          char-whitespace?
          char-set:alphabetic
+         char-set:changes-when-case-folded
+         char-set:changes-when-lower-cased
+         char-set:changes-when-upper-cased
          char-set:lower-case
          char-set:upper-case
          char-set:whitespace)
diff --git a/src/runtime/ucd-table-cwcf.scm b/src/runtime/ucd-table-cwcf.scm
new file mode 100644 (file)
index 0000000..c877fa9
--- /dev/null
@@ -0,0 +1,44 @@
+#| -*-Scheme-*-
+
+Copyright (C) 1986, 1987, 1988, 1989, 1990, 1991, 1992, 1993, 1994,
+    1995, 1996, 1997, 1998, 1999, 2000, 2001, 2002, 2003, 2004, 2005,
+    2006, 2007, 2008, 2009, 2010, 2011, 2012, 2013, 2014, 2015, 2016,
+    2017 Massachusetts Institute of Technology
+
+This file is part of MIT/GNU Scheme.
+
+MIT/GNU Scheme is free software; you can redistribute it and/or modify
+it under the terms of the GNU General Public License as published by
+the Free Software Foundation; either version 2 of the License, or (at
+your option) any later version.
+
+MIT/GNU Scheme is distributed in the hope that it will be useful, but
+WITHOUT ANY WARRANTY; without even the implied warranty of
+MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
+General Public License for more details.
+
+You should have received a copy of the GNU General Public License
+along with MIT/GNU Scheme; if not, write to the Free Software
+Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301,
+USA.
+
+|#
+
+;;;; UCD property: CWCF
+
+;;; Generated from Unicode 9.0.0
+
+(declare (usual-integrations))
+\f
+(define (char-changes-when-case-folded? char)
+  (char-in-set? char char-set:changes-when-case-folded))
+
+(define-deferred char-set:changes-when-case-folded
+  (char-set*
+   '((65 . 91) 181   (192 . 215) (216 . 224)   256   258           260   262   264           266           268   270   272   274   276   278         280   282         284   286   288   290   292   294   296   298   300             302   304   306   308   310   313   315   317   319   321   323   325   327           (329 . 331) 332   334   336   338           340             342             344           346             348             350             352             354             356             358             360             362               364           366           368           370           372           374           (376 . 378) 379           381         383           (385 . 387) 388           (390 . 392)     (393 . 396) (398 . 402)     (403 . 405) (406 . 409) (412 . 414) (415 . 417)     418   420   (422 . 424)     425   428   (430 . 432)   (433 . 436)   437   (439 . 441)   444           (452 . 454) (455 . 457) (458 . 460) 461   463
+     465       467   469         471           473   475           478   480   482           484           486   488   490   492   494   (497 . 499) 500   (502 . 505) 506   508   510   512   514   516   518   520   522             524   526   528   530   532   534   536   538   540   542   544   546   548           550         552   554   556   558           560             562             (570 . 572)   (573 . 575)     577             (579 . 583)     584             586             588             590             837             880               882           886           895           902           (904 . 907)   908           (910 . 912) (913 . 930)   (931 . 940) 962           (975 . 978) (981 . 983)   984             986         988             990         992         994         996             998   1000  1002            1004  1006  (1008 . 1010) (1012 . 1014) 1015  (1017 . 1019) (1021 . 1072) 1120        1122        1124        1126  1128
+     1130      1132  1134        1136          1138  1140          1142  1144  1146          1148          1150  1152  1162  1164  1166  1168        1170  1172        1174  1176  1178  1180  1182  1184  1186  1188  1190            1192  1194  1196  1198  1200  1202  1204  1206  1208  1210  1212  1214  (1216 . 1218) 1219        1221  1223  1225  1227          1229            1232            1234          1236            1238            1240            1242            1244            1246            1248            1250            1252              1254          1256          1258          1260          1262          1264          1266        1268          1270        1272          1274        1276          1278            1280        1282            1284        1286        1288        1290            1292  1294  1296            1298  1300  1302          1304          1306  1308          1310          1312        1314        1316        1318  1320
+     1322      1324  1326        (1329 . 1367) 1415  (4256 . 4294) 4295  4301  (5112 . 5118) (7296 . 7305) 7680  7682  7684  7686  7688  7690        7692  7694        7696  7698  7700  7702  7704  7706  7708  7710  7712            7714  7716  7718  7720  7722  7724  7726  7728  7730  7732  7734  7736  7738          7740        7742  7744  7746  7748          7750            7752            7754          7756            7758            7760            7762            7764            7766            7768            7770            7772              7774          7776          7778          7780          7782          7784          7786        7788          7790        7792          7794        7796          7798            7800        7802            7804        7806        7808        7810            7812  7814  7816            7818  7820  7822          7824          7826  7828          (7834 . 7836) 7838        7840        7842        7844  7846
+     7848      7850  7852        7854          7856  7858          7860  7862  7864          7866          7868  7870  7872  7874  7876  7878        7880  7882        7884  7886  7888  7890  7892  7894  7896  7898  7900            7902  7904  7906  7908  7910  7912  7914  7916  7918  7920  7922  7924  7926          7928        7930  7932  7934  (7944 . 7952) (7960 . 7966)   (7976 . 7984)   (7992 . 8000) (8008 . 8014)   8025            8027            8029            8031            (8040 . 8048)   (8064 . 8112)   (8114 . 8117)   (8119 . 8125)     (8130 . 8133) (8135 . 8141) (8152 . 8156) (8168 . 8173) (8178 . 8181) (8183 . 8189) 8486        (8490 . 8492) 8498        (8544 . 8560) 8579        (9398 . 9424) (11264 . 11311) 11360       (11362 . 11365) 11367       11369       11371       (11373 . 11377) 11378 11381 (11390 . 11393) 11394 11396 11398         11400         11402 11404         11406         11408       11410       11412       11414 11416
+     11418     11420 11422       11424         11426 11428         11430 11432 11434         11436         11438 11440 11442 11444 11446 11448       11450 11452       11454 11456 11458 11460 11462 11464 11466 11468 11470           11472 11474 11476 11478 11480 11482 11484 11486 11488 11490 11499 11501 11506         42560       42562 42564 42566 42568         42570           42572           42574         42576           42578           42580           42582           42584           42586           42588           42590           42592             42594         42596         42598         42600         42602         42604         42624       42626         42628       42630         42632       42634         42636           42638       42640           42642       42644       42646       42648           42650 42786 42788           42790 42792 42794         42796         42798 42802         42804         42806       42808       42810       42812 42814
+     42816     42818 42820       42822         42824 42826         42828 42830 42832         42834         42836 42838 42840 42842 42844 42846       42848 42850       42852 42854 42856 42858 42860 42862 42873 42875 (42877 . 42879) 42880 42882 42884 42886 42891 42893 42896 42898 42902 42904 42906 42908 42910         42912       42914 42916 42918 42920         (42922 . 42927) (42928 . 42933) 42934         (43888 . 43968) (64256 . 64263) (64275 . 64280) (65313 . 65339) (66560 . 66600) (66736 . 66772) (68736 . 68787) (71840 . 71872) (125184 . 125218))))
diff --git a/src/runtime/ucd-table-cwl.scm b/src/runtime/ucd-table-cwl.scm
new file mode 100644 (file)
index 0000000..f7eaa54
--- /dev/null
@@ -0,0 +1,44 @@
+#| -*-Scheme-*-
+
+Copyright (C) 1986, 1987, 1988, 1989, 1990, 1991, 1992, 1993, 1994,
+    1995, 1996, 1997, 1998, 1999, 2000, 2001, 2002, 2003, 2004, 2005,
+    2006, 2007, 2008, 2009, 2010, 2011, 2012, 2013, 2014, 2015, 2016,
+    2017 Massachusetts Institute of Technology
+
+This file is part of MIT/GNU Scheme.
+
+MIT/GNU Scheme is free software; you can redistribute it and/or modify
+it under the terms of the GNU General Public License as published by
+the Free Software Foundation; either version 2 of the License, or (at
+your option) any later version.
+
+MIT/GNU Scheme is distributed in the hope that it will be useful, but
+WITHOUT ANY WARRANTY; without even the implied warranty of
+MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
+General Public License for more details.
+
+You should have received a copy of the GNU General Public License
+along with MIT/GNU Scheme; if not, write to the Free Software
+Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301,
+USA.
+
+|#
+
+;;;; UCD property: CWL
+
+;;; Generated from Unicode 9.0.0
+
+(declare (usual-integrations))
+\f
+(define (char-changes-when-lower-cased? char)
+  (char-in-set? char char-set:changes-when-lower-cased))
+
+(define-deferred char-set:changes-when-lower-cased
+  (char-set*
+   '((65 . 91) (192 . 215) (216 . 223) 256   258             260   262   264   266   268   270   272         274   276         278   280   282   284   286   288   290   292   294   296             298             300   302             304             306             308             310             313               315   317   319   321   323           325           327           330           332           334           336           338           340           342   344           346   348           350   352           354             356   358             360   362   364         366             368         370         372             374   (376 . 378) 379   381   (385 . 387) 388   (390 . 392) (393 . 396) (398 . 402) (403 . 405) (406 . 409) (412 . 414) (415 . 417) 418   420   (422 . 424)   425           428   (430 . 432) (433 . 436) 437   (439 . 441) 444   (452 . 454)   (455 . 457)   (458 . 460) 461   463           465   467   469   471
+     473       475         478         480   482             484   486   488   490   492   494   (497 . 499) 500   (502 . 505) 506   508   510   512   514   516   518   520   522   524             526             528   530             532             534             536             538             540               542   544   546   548   550           552           554           556           558           560           562           (570 . 572)   (573 . 575)   577   (579 . 583)   584   586           588   590           880             882   886             895   902   (904 . 907) 908             (910 . 912) (913 . 930) (931 . 940)     975   984         986   988   990         992   994         996         998         1000        1002        1004        1006        1012  1015  (1017 . 1019) (1021 . 1072) 1120  1122        1124        1126  1128        1130  1132          1134          1136        1138  1140          1142  1144  1146  1148
+     1150      1152        1162        1164  1166            1168  1170  1172  1174  1176  1178  1180        1182  1184        1186  1188  1190  1192  1194  1196  1198  1200  1202  1204            1206            1208  1210            1212            1214            (1216 . 1218)   1219            1221              1223  1225  1227  1229  1232          1234          1236          1238          1240          1242          1244          1246          1248          1250  1252          1254  1256          1258  1260          1262            1264  1266            1268  1270  1272        1274            1276        1278        1280            1282  1284        1286  1288  1290        1292  1294        1296        1298        1300        1302        1304        1306        1308  1310  1312          1314          1316  1318        1320        1322  1324        1326  (1329 . 1367) (4256 . 4294) 4295        4301  (5024 . 5110) 7680  7682  7684  7686
+     7688      7690        7692        7694  7696            7698  7700  7702  7704  7706  7708  7710        7712  7714        7716  7718  7720  7722  7724  7726  7728  7730  7732  7734            7736            7738  7740            7742            7744            7746            7748            7750              7752  7754  7756  7758  7760          7762          7764          7766          7768          7770          7772          7774          7776          7778  7780          7782  7784          7786  7788          7790            7792  7794            7796  7798  7800        7802            7804        7806        7808            7810  7812        7814  7816  7818        7820  7822        7824        7826        7828        7838        7840        7842        7844  7846  7848          7850          7852  7854        7856        7858  7860        7862  7864          7866          7868        7870  7872          7874  7876  7878  7880
+     7882      7884        7886        7888  7890            7892  7894  7896  7898  7900  7902  7904        7906  7908        7910  7912  7914  7916  7918  7920  7922  7924  7926  7928            7930            7932  7934            (7944 . 7952)   (7960 . 7966)   (7976 . 7984)   (7992 . 8000)   (8008 . 8014)     8025  8027  8029  8031  (8040 . 8048) (8072 . 8080) (8088 . 8096) (8104 . 8112) (8120 . 8125) (8136 . 8141) (8152 . 8156) (8168 . 8173) (8184 . 8189) 8486  (8490 . 8492) 8498  (8544 . 8560) 8579  (9398 . 9424) (11264 . 11311) 11360 (11362 . 11365) 11367 11369 11371       (11373 . 11377) 11378       11381       (11390 . 11393) 11394 11396       11398 11400 11402       11404 11406       11408       11410       11412       11414       11416       11418       11420 11422 11424         11426         11428 11430       11432       11434 11436       11438 11440         11442         11444       11446 11448         11450 11452 11454 11456
+     11458     11460       11462       11464 11466           11468 11470 11472 11474 11476 11478 11480       11482 11484       11486 11488 11490 11499 11501 11506 42560 42562 42564 42566           42568           42570 42572           42574           42576           42578           42580           42582             42584 42586 42588 42590 42592         42594         42596         42598         42600         42602         42604         42624         42626         42628 42630         42632 42634         42636 42638         42640           42642 42644           42646 42648 42650       42786           42788       42790       42792           42794 42796       42798 42802 42804       42806 42808       42810       42812       42814       42816       42818       42820       42822 42824 42826         42828         42830 42832       42834       42836 42838       42840 42842         42844         42846       42848 42850         42852 42854 42856 42858
+     42860     42862       42873       42875 (42877 . 42879) 42880 42882 42884 42886 42891 42893 42896       42898 42902       42904 42906 42908 42910 42912 42914 42916 42918 42920 (42922 . 42927) (42928 . 42933) 42934 (65313 . 65339) (66560 . 66600) (66736 . 66772) (68736 . 68787) (71840 . 71872) (125184 . 125218))))
diff --git a/src/runtime/ucd-table-cwu.scm b/src/runtime/ucd-table-cwu.scm
new file mode 100644 (file)
index 0000000..b6ef78c
--- /dev/null
@@ -0,0 +1,44 @@
+#| -*-Scheme-*-
+
+Copyright (C) 1986, 1987, 1988, 1989, 1990, 1991, 1992, 1993, 1994,
+    1995, 1996, 1997, 1998, 1999, 2000, 2001, 2002, 2003, 2004, 2005,
+    2006, 2007, 2008, 2009, 2010, 2011, 2012, 2013, 2014, 2015, 2016,
+    2017 Massachusetts Institute of Technology
+
+This file is part of MIT/GNU Scheme.
+
+MIT/GNU Scheme is free software; you can redistribute it and/or modify
+it under the terms of the GNU General Public License as published by
+the Free Software Foundation; either version 2 of the License, or (at
+your option) any later version.
+
+MIT/GNU Scheme is distributed in the hope that it will be useful, but
+WITHOUT ANY WARRANTY; without even the implied warranty of
+MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
+General Public License for more details.
+
+You should have received a copy of the GNU General Public License
+along with MIT/GNU Scheme; if not, write to the Free Software
+Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301,
+USA.
+
+|#
+
+;;;; UCD property: CWU
+
+;;; Generated from Unicode 9.0.0
+
+(declare (usual-integrations))
+\f
+(define (char-changes-when-upper-cased? char)
+  (char-in-set? char char-set:changes-when-upper-cased))
+
+(define-deferred char-set:changes-when-upper-cased
+  (char-set*
+   '((97 . 123) 181         (223 . 247)   (248 . 256)   257           259   261   263   265   267   269         271         273   275   277   279   281   283   285   287   289   291   293   295   297   299   301   303             305   307   309   311   314   316   318             320             322             324             326             (328 . 330)     331             333             335               337           339           341   343   345           347           349         351           353           355           357           359           361         363         365           367         369           371             373   375             378         380   (382 . 385) 387   389   392   396   402         405   (409 . 411) 414         417         419   421   424   429   432   436   438           441   445   447   (453 . 455) (456 . 458)   (459 . 461) 462   464   466           468   470   472
+     474        (476 . 478) 479           481           483           485   487   489   491   493   (495 . 497) (498 . 500) 501   505   507   509   511   513   515   517   519   521   523   525   527   529   531   533             535   537   539   541   543   547   549             551             553             555             557             559             561             563             572               (575 . 577)   578           583   585   587           589           (591 . 597) (598 . 600)   601           (603 . 605)   (608 . 610)   611           (613 . 615) (616 . 621) 623           (625 . 627) 629           637             640   643             (647 . 653) 658   (669 . 671) 837   881   883   887   (891 . 894) 912   (940 . 975) (976 . 978) (981 . 984) 985   987   989   991   993   995   997           999   1001  1003  1005        (1007 . 1012) 1013        1016  1019  (1072 . 1120) 1121  1123  1125
+     1127       1129        1131          1133          1135          1137  1139  1141  1143  1145  1147        1149        1151  1153  1163  1165  1167  1169  1171  1173  1175  1177  1179  1181  1183  1185  1187  1189            1191  1193  1195  1197  1199  1201  1203            1205            1207            1209            1211            1213            1215            1218            1220              1222          1224          1226  1228  (1230 . 1232) 1233          1235        1237          1239          1241          1243          1245          1247        1249        1251          1253        1255          1257            1259  1261            1263        1265  1267        1269  1271  1273  1275  1277        1279  1281        1283        1285        1287  1289  1291  1293  1295  1297  1299          1301  1303  1305  1307        1309          1311        1313  1315  1317          1319  1321  1323
+     1325       1327        (1377 . 1416) (5112 . 5118) (7296 . 7305) 7545  7549  7681  7683  7685  7687        7689        7691  7693  7695  7697  7699  7701  7703  7705  7707  7709  7711  7713  7715  7717  7719  7721            7723  7725  7727  7729  7731  7733  7735            7737            7739            7741            7743            7745            7747            7749            7751              7753          7755          7757  7759  7761          7763          7765        7767          7769          7771          7773          7775          7777        7779        7781          7783        7785          7787            7789  7791            7793        7795  7797        7799  7801  7803  7805  7807        7809  7811        7813        7815        7817  7819  7821  7823  7825  7827  (7829 . 7836) 7841  7843  7845  7847        7849          7851        7853  7855  7857          7859  7861  7863
+     7865       7867        7869          7871          7873          7875  7877  7879  7881  7883  7885        7887        7889  7891  7893  7895  7897  7899  7901  7903  7905  7907  7909  7911  7913  7915  7917  7919            7921  7923  7925  7927  7929  7931  7933            (7935 . 7944)   (7952 . 7958)   (7968 . 7976)   (7984 . 7992)   (8000 . 8006)   (8016 . 8024)   (8032 . 8040)   (8048 . 8062)     (8064 . 8117) (8118 . 8120) 8124  8126  (8130 . 8133) (8134 . 8136) 8140        (8144 . 8148) (8150 . 8152) (8160 . 8168) (8178 . 8181) (8182 . 8184) 8188        8526        (8560 . 8576) 8580        (9424 . 9450) (11312 . 11359) 11361 (11365 . 11367) 11368       11370 11372       11379 11382 11393 11395 11397       11399 11401       11403       11405       11407 11409 11411 11413 11415 11417 11419         11421 11423 11425 11427       11429         11431       11433 11435 11437         11439 11441 11443
+     11445      11447       11449         11451         11453         11455 11457 11459 11461 11463 11465       11467       11469 11471 11473 11475 11477 11479 11481 11483 11485 11487 11489 11491 11500 11502 11507 (11520 . 11558) 11559 11565 42561 42563 42565 42567 42569           42571           42573           42575           42577           42579           42581           42583           42585             42587         42589         42591 42593 42595         42597         42599       42601         42603         42605         42625         42627         42629       42631       42633         42635       42637         42639           42641 42643           42645       42647 42649       42651 42787 42789 42791 42793       42795 42797       42799       42803       42805 42807 42809 42811 42813 42815 42817         42819 42821 42823 42825       42827         42829       42831 42833 42835         42837 42839 42841
+     42843      42845       42847         42849         42851         42853 42855 42857 42859 42861 42863       42874       42876 42879 42881 42883 42885 42887 42892 42897 42899 42903 42905 42907 42909 42911 42913 42915           42917 42919 42921 42933 42935 43859 (43888 . 43968) (64256 . 64263) (64275 . 64280) (65345 . 65371) (66600 . 66640) (66776 . 66812) (68800 . 68851) (71872 . 71904) (125218 . 125252))))