diff --git a/regex/src/com.oracle.truffle.regex/src/com/oracle/truffle/regex/chardata/UnicodeCharacterAliases.java b/regex/src/com.oracle.truffle.regex/src/com/oracle/truffle/regex/chardata/UnicodeCharacterAliases.java index 4b783446ccf6..e39a4b86f9a4 100644 --- a/regex/src/com.oracle.truffle.regex/src/com/oracle/truffle/regex/chardata/UnicodeCharacterAliases.java +++ b/regex/src/com.oracle.truffle.regex/src/com/oracle/truffle/regex/chardata/UnicodeCharacterAliases.java @@ -56,7 +56,7 @@ public class UnicodeCharacterAliases { /* GENERATED CODE BEGIN - KEEP THIS MARKER FOR AUTOMATIC UPDATES */ - public static final EconomicMap CHARACTER_ALIASES = EconomicMap.create(473); + public static final EconomicMap CHARACTER_ALIASES = EconomicMap.create(477); static { CHARACTER_ALIASES.put("ACK", 0x0006); @@ -67,6 +67,7 @@ public class UnicodeCharacterAliases { CHARACTER_ALIASES.put("APPLICATION PROGRAM COMMAND", 0x009F); CHARACTER_ALIASES.put("ARABIC SMALL HIGH LIGATURE ALEF WITH YEH BARREE", 0x0616); CHARACTER_ALIASES.put("BACKSPACE", 0x0008); + CHARACTER_ALIASES.put("BAMUM LETTER PHASE-A MAEMGBIEE", 0x1680B); CHARACTER_ALIASES.put("BEL", 0x0007); CHARACTER_ALIASES.put("BOM", 0xFEFF); CHARACTER_ALIASES.put("BPH", 0x0082); @@ -86,6 +87,7 @@ public class UnicodeCharacterAliases { CHARACTER_ALIASES.put("CONTROL SEQUENCE INTRODUCER", 0x009B); CHARACTER_ALIASES.put("CR", 0x000D); CHARACTER_ALIASES.put("CSI", 0x009B); + CHARACTER_ALIASES.put("CUNEIFORM SIGN KALAM", 0x12327); CHARACTER_ALIASES.put("CUNEIFORM SIGN NU11 OVER NU11 BUR OVER BUR", 0x122D5); CHARACTER_ALIASES.put("CUNEIFORM SIGN NU11 TENU", 0x122D4); CHARACTER_ALIASES.put("DATA LINK ESCAPE", 0x0010); @@ -174,6 +176,8 @@ public class UnicodeCharacterAliases { CHARACTER_ALIASES.put("MEDEFAIDRIN CAPITAL LETTER NG", 0x16E57); CHARACTER_ALIASES.put("MEDEFAIDRIN SMALL LETTER H", 0x16E76); CHARACTER_ALIASES.put("MEDEFAIDRIN SMALL LETTER NG", 0x16E77); + CHARACTER_ALIASES.put("MENDE KIKAKUI SYLLABLE M172 MBO", 0x1E899); + CHARACTER_ALIASES.put("MENDE KIKAKUI SYLLABLE M174 MBOO", 0x1E89A); CHARACTER_ALIASES.put("MESSAGE WAITING", 0x0095); CHARACTER_ALIASES.put("MICR DASH SYMBOL", 0x2449); CHARACTER_ALIASES.put("MICR ON US SYMBOL", 0x2448); diff --git a/regex/src/com.oracle.truffle.regex/src/com/oracle/truffle/regex/charset/UnicodePropertyData.java b/regex/src/com.oracle.truffle.regex/src/com/oracle/truffle/regex/charset/UnicodePropertyData.java index 550631c932a5..03c8df788816 100644 --- a/regex/src/com.oracle.truffle.regex/src/com/oracle/truffle/regex/charset/UnicodePropertyData.java +++ b/regex/src/com.oracle.truffle.regex/src/com/oracle/truffle/regex/charset/UnicodePropertyData.java @@ -10220,5 +10220,360 @@ static UnicodePropertyDataDiff populateUNICODE_15_1_0(UnicodePropertyData parent return new UnicodePropertyDataDiff(parent, properties, emoji, propAliases, gcAliases, scAliases, blkAliases); } + static UnicodePropertyDataDiff populateUNICODE_16_0_0(UnicodePropertyData parent) { + EconomicMap properties = EconomicMap.create(146); + EconomicMap emoji = EconomicMap.create(2); + properties.put("Alpha", CodePointSetDiff.create( + CodePointSet.createNoDedup(0x000363, 0x00036f, 0x000897, 0x000897, 0x001c89, 0x001c8a, 0x001dd3, 0x001de6, 0x00a7cb, 0x00a7cd, 0x00a7da, 0x00a7dc, 0x0105c0, 0x0105f3, 0x010d4a, + 0x010d65, 0x010d69, 0x010d69, 0x010d6f, 0x010d85, 0x010ec2, 0x010ec4, 0x010efc, 0x010efc, 0x011380, 0x011389, 0x01138b, 0x01138b, 0x01138e, 0x01138e, 0x011390, + 0x0113b5, 0x0113b7, 0x0113c0, 0x0113c2, 0x0113c2, 0x0113c5, 0x0113c5, 0x0113c7, 0x0113ca, 0x0113cc, 0x0113cd, 0x0113d1, 0x0113d1, 0x0113d3, 0x0113d3, 0x011bc0, + 0x011be0, 0x013460, 0x0143fa, 0x016100, 0x01612e, 0x016d40, 0x016d6c, 0x018cff, 0x018cff, 0x01e5d0, 0x01e5ed, 0x01e5f0, 0x01e5f0, 0x02ebf0, 0x02ee5d), + CodePointSet.getEmpty())); + properties.put("Assigned", + CodePointSetDiff.create(CodePointSet.createNoDedup(0x000897, 0x000897, 0x001b4e, 0x001b4f, 0x001b7f, 0x001b7f, 0x001c89, 0x001c8a, 0x002427, 0x002429, 0x002ffc, 0x002fff, + 0x0031e4, 0x0031e5, 0x0031ef, 0x0031ef, 0x00a7cb, 0x00a7cd, 0x00a7da, 0x00a7dc, 0x0105c0, 0x0105f3, 0x010d40, 0x010d65, 0x010d69, 0x010d85, 0x010d8e, 0x010d8f, + 0x010ec2, 0x010ec4, 0x010efc, 0x010efc, 0x011380, 0x011389, 0x01138b, 0x01138b, 0x01138e, 0x01138e, 0x011390, 0x0113b5, 0x0113b7, 0x0113c0, 0x0113c2, 0x0113c2, + 0x0113c5, 0x0113c5, 0x0113c7, 0x0113ca, 0x0113cc, 0x0113d5, 0x0113d7, 0x0113d8, 0x0113e1, 0x0113e2, 0x0116d0, 0x0116e3, 0x011bc0, 0x011be1, 0x011bf0, 0x011bf9, + 0x011f5a, 0x011f5a, 0x013460, 0x0143fa, 0x016100, 0x016139, 0x016d40, 0x016d79, 0x018cff, 0x018cff, 0x01cc00, 0x01ccf9, 0x01cd00, 0x01ceb3, 0x01e5d0, 0x01e5fa, + 0x01e5ff, 0x01e5ff, 0x01f8b2, 0x01f8bb, 0x01f8c0, 0x01f8c1, 0x01fa89, 0x01fa89, 0x01fa8f, 0x01fa8f, 0x01fabe, 0x01fabe, 0x01fac6, 0x01fac6, 0x01fadc, 0x01fadc, + 0x01fadf, 0x01fadf, 0x01fae9, 0x01fae9, 0x01fbcb, 0x01fbef, 0x02ebf0, 0x02ee5d), CodePointSet.getEmpty())); + properties.put("Bidi_M", CodePointSetDiff.create(CodePointSet.createNoDedup(0x00226d, 0x00226d), CodePointSet.getEmpty())); + properties.put("CI", + CodePointSetDiff.create(CodePointSet.createNoDedup(0x000897, 0x000897, 0x010d4e, 0x010d4e, 0x010d69, 0x010d6d, 0x010d6f, 0x010d6f, 0x010efc, 0x010efc, 0x0113bb, 0x0113c0, + 0x0113ce, 0x0113ce, 0x0113d0, 0x0113d0, 0x0113d2, 0x0113d2, 0x0113e1, 0x0113e2, 0x011f5a, 0x011f5a, 0x01611e, 0x016129, 0x01612d, 0x01612f, 0x016d40, 0x016d42, + 0x016d6b, 0x016d6c, 0x01e5ee, 0x01e5ef), CodePointSet.createNoDedup(0x01171e, 0x01171e))); + properties.put("CWCF", CodePointSetDiff.create(CodePointSet.createNoDedup(0x001c89, 0x001c89, 0x00a7cb, 0x00a7cc, 0x00a7da, 0x00a7da, 0x00a7dc, 0x00a7dc, 0x010d50, 0x010d65), + CodePointSet.getEmpty())); + properties.put("CWCM", CodePointSetDiff.create( + CodePointSet.createNoDedup(0x00019b, 0x00019b, 0x000264, 0x000264, 0x001c89, 0x001c8a, 0x00a7cb, 0x00a7cd, 0x00a7da, 0x00a7dc, 0x010d50, 0x010d65, 0x010d70, 0x010d85), + CodePointSet.getEmpty())); + properties.put("CWKCF", CodePointSetDiff.create( + CodePointSet.createNoDedup(0x001c89, 0x001c89, 0x00a7cb, 0x00a7cc, 0x00a7da, 0x00a7da, 0x00a7dc, 0x00a7dc, 0x010d50, 0x010d65, 0x01ccd6, 0x01ccf9), CodePointSet.getEmpty())); + properties.put("CWL", CodePointSetDiff.create(CodePointSet.createNoDedup(0x001c89, 0x001c89, 0x00a7cb, 0x00a7cc, 0x00a7da, 0x00a7da, 0x00a7dc, 0x00a7dc, 0x010d50, 0x010d65), + CodePointSet.getEmpty())); + properties.put("CWT", CodePointSetDiff.create( + CodePointSet.createNoDedup(0x00019b, 0x00019b, 0x000264, 0x000264, 0x001c8a, 0x001c8a, 0x00a7cd, 0x00a7cd, 0x00a7db, 0x00a7db, 0x010d70, 0x010d85), CodePointSet.getEmpty())); + properties.put("CWU", CodePointSetDiff.create( + CodePointSet.createNoDedup(0x00019b, 0x00019b, 0x000264, 0x000264, 0x001c8a, 0x001c8a, 0x00a7cd, 0x00a7cd, 0x00a7db, 0x00a7db, 0x010d70, 0x010d85), CodePointSet.getEmpty())); + properties.put("Cased", CodePointSetDiff.create(CodePointSet.createNoDedup(0x001c89, 0x001c8a, 0x00a7cb, 0x00a7cd, 0x00a7da, 0x00a7dc, 0x010d50, 0x010d65, 0x010d70, 0x010d85), + CodePointSet.getEmpty())); + properties.put("Dash", CodePointSetDiff.create(CodePointSet.createNoDedup(0x010d6e, 0x010d6e), CodePointSet.getEmpty())); + properties.put("Dia", + CodePointSetDiff.create( + CodePointSet.createNoDedup(0x000e3a, 0x000e3a, 0x001734, 0x001734, 0x001a60, 0x001a60, 0x001be6, 0x001be6, 0x001bf2, 0x001bf3, 0x00a806, 0x00a806, 0x00a82c, + 0x00a82c, 0x010a38, 0x010a3a, 0x010a3f, 0x010a3f, 0x010d4e, 0x010d4e, 0x010d69, 0x010d6d, 0x01133b, 0x01133b, 0x0113ce, 0x0113d0, 0x0113d2, + 0x0113d3, 0x0113e1, 0x0113e2, 0x011f41, 0x011f42, 0x011f5a, 0x011f5a, 0x01612f, 0x01612f, 0x016d6b, 0x016d6c, 0x01e5ee, 0x01e5ef), + CodePointSet.getEmpty())); + properties.put("EPres", CodePointSetDiff.create( + CodePointSet.createNoDedup(0x01fa89, 0x01fa89, 0x01fa8f, 0x01fa8f, 0x01fabe, 0x01fabe, 0x01fac6, 0x01fac6, 0x01fadc, 0x01fadc, 0x01fadf, 0x01fadf, 0x01fae9, 0x01fae9), + CodePointSet.getEmpty())); + properties.put("Emoji", CodePointSetDiff.create( + CodePointSet.createNoDedup(0x01fa89, 0x01fa89, 0x01fa8f, 0x01fa8f, 0x01fabe, 0x01fabe, 0x01fac6, 0x01fac6, 0x01fadc, 0x01fadc, 0x01fadf, 0x01fadf, 0x01fae9, 0x01fae9), + CodePointSet.getEmpty())); + properties.put("Ext", CodePointSetDiff.create(CodePointSet.createNoDedup(0x000a71, 0x000a71, 0x000afb, 0x000afb, 0x010d4e, 0x010d4e, 0x010d6a, 0x010d6a, 0x010d6f, 0x010d6f, 0x011237, 0x011237, + 0x0113d2, 0x0113d3, 0x01e5ef, 0x01e5ef), CodePointSet.getEmpty())); + properties.put("Gr_Base", CodePointSetDiff.create( + CodePointSet.createNoDedup(0x001b4e, 0x001b4f, 0x001b7f, 0x001b7f, 0x001c89, 0x001c8a, 0x002427, 0x002429, 0x002ffc, 0x002fff, 0x0031e4, 0x0031e5, 0x0031ef, 0x0031ef, 0x00a7cb, + 0x00a7cd, 0x00a7da, 0x00a7dc, 0x0105c0, 0x0105f3, 0x010d40, 0x010d65, 0x010d6e, 0x010d85, 0x010d8e, 0x010d8f, 0x010ec2, 0x010ec4, 0x011380, 0x011389, 0x01138b, + 0x01138b, 0x01138e, 0x01138e, 0x011390, 0x0113b5, 0x0113b7, 0x0113b7, 0x0113b9, 0x0113ba, 0x0113ca, 0x0113ca, 0x0113cc, 0x0113cd, 0x0113d1, 0x0113d1, 0x0113d3, + 0x0113d5, 0x0113d7, 0x0113d8, 0x0116d0, 0x0116e3, 0x01171e, 0x01171e, 0x011bc0, 0x011be1, 0x011bf0, 0x011bf9, 0x013460, 0x0143fa, 0x016100, 0x01611d, 0x01612a, + 0x01612c, 0x016130, 0x016139, 0x016d40, 0x016d79, 0x018cff, 0x018cff, 0x01cc00, 0x01ccf9, 0x01cd00, 0x01ceb3, 0x01e5d0, 0x01e5ed, 0x01e5f0, 0x01e5fa, 0x01e5ff, + 0x01e5ff, 0x01f8b2, 0x01f8bb, 0x01f8c0, 0x01f8c1, 0x01fa89, 0x01fa89, 0x01fa8f, 0x01fa8f, 0x01fabe, 0x01fabe, 0x01fac6, 0x01fac6, 0x01fadc, 0x01fadc, 0x01fadf, + 0x01fadf, 0x01fae9, 0x01fae9, 0x01fbcb, 0x01fbef, 0x02ebf0, 0x02ee5d), + CodePointSet.createNoDedup(0x000cc0, 0x000cc0, 0x000cc7, 0x000cc8, 0x000cca, 0x000ccb, 0x001715, 0x001715, 0x001734, 0x001734, 0x001b3b, 0x001b3b, 0x001b3d, 0x001b3d, 0x001b43, + 0x001b44, 0x001baa, 0x001baa, 0x001bf2, 0x001bf3, 0x00a953, 0x00a953, 0x00a9c0, 0x00a9c0, 0x0111c0, 0x0111c0, 0x011235, 0x011235, 0x01134d, 0x01134d, 0x0116b6, + 0x0116b6, 0x01193d, 0x01193d, 0x011f41, 0x011f41, 0x016ff0, 0x016ff1, 0x01d166, 0x01d166, 0x01d16d, 0x01d16d))); + properties.put("Gr_Ext", + CodePointSetDiff.create(CodePointSet.createNoDedup(0x000897, 0x000897, 0x000cc0, 0x000cc0, 0x000cc7, 0x000cc8, 0x000cca, 0x000ccb, 0x001715, 0x001715, 0x001734, 0x001734, + 0x001b3b, 0x001b3b, 0x001b3d, 0x001b3d, 0x001b43, 0x001b44, 0x001baa, 0x001baa, 0x001bf2, 0x001bf3, 0x00a953, 0x00a953, 0x00a9c0, 0x00a9c0, 0x010d69, 0x010d6d, + 0x010efc, 0x010efc, 0x0111c0, 0x0111c0, 0x011235, 0x011235, 0x01134d, 0x01134d, 0x0113b8, 0x0113b8, 0x0113bb, 0x0113c0, 0x0113c2, 0x0113c2, 0x0113c5, 0x0113c5, + 0x0113c7, 0x0113c9, 0x0113ce, 0x0113d0, 0x0113d2, 0x0113d2, 0x0113e1, 0x0113e2, 0x0116b6, 0x0116b6, 0x01193d, 0x01193d, 0x011f41, 0x011f41, 0x011f5a, 0x011f5a, + 0x01611e, 0x016129, 0x01612d, 0x01612f, 0x016ff0, 0x016ff1, 0x01d166, 0x01d166, 0x01d16d, 0x01d16d, 0x01e5ee, 0x01e5ef), + CodePointSet.createNoDedup(0x01171e, 0x01171e))); + properties.put("IDC", + CodePointSetDiff.create(CodePointSet.createNoDedup(0x000897, 0x000897, 0x001c89, 0x001c8a, 0x00200c, 0x00200d, 0x0030fb, 0x0030fb, 0x00a7cb, 0x00a7cd, 0x00a7da, 0x00a7dc, + 0x00ff65, 0x00ff65, 0x0105c0, 0x0105f3, 0x010d40, 0x010d65, 0x010d69, 0x010d6d, 0x010d6f, 0x010d85, 0x010ec2, 0x010ec4, 0x010efc, 0x010efc, 0x011380, 0x011389, + 0x01138b, 0x01138b, 0x01138e, 0x01138e, 0x011390, 0x0113b5, 0x0113b7, 0x0113c0, 0x0113c2, 0x0113c2, 0x0113c5, 0x0113c5, 0x0113c7, 0x0113ca, 0x0113cc, 0x0113d3, + 0x0113e1, 0x0113e2, 0x0116d0, 0x0116e3, 0x011bc0, 0x011be0, 0x011bf0, 0x011bf9, 0x011f5a, 0x011f5a, 0x013460, 0x0143fa, 0x016100, 0x016139, 0x016d40, 0x016d6c, + 0x016d70, 0x016d79, 0x018cff, 0x018cff, 0x01ccf0, 0x01ccf9, 0x01e5d0, 0x01e5fa, 0x02ebf0, 0x02ee5d), CodePointSet.getEmpty())); + properties.put("IDS", + CodePointSetDiff.create(CodePointSet.createNoDedup(0x001c89, 0x001c8a, 0x00a7cb, 0x00a7cd, 0x00a7da, 0x00a7dc, 0x0105c0, 0x0105f3, 0x010d4a, 0x010d65, 0x010d6f, 0x010d85, + 0x010ec2, 0x010ec4, 0x011380, 0x011389, 0x01138b, 0x01138b, 0x01138e, 0x01138e, 0x011390, 0x0113b5, 0x0113b7, 0x0113b7, 0x0113d1, 0x0113d1, 0x0113d3, 0x0113d3, + 0x011bc0, 0x011be0, 0x013460, 0x0143fa, 0x016100, 0x01611d, 0x016d40, 0x016d6c, 0x018cff, 0x018cff, 0x01e5d0, 0x01e5ed, 0x01e5f0, 0x01e5f0, 0x02ebf0, 0x02ee5d), + CodePointSet.getEmpty())); + properties.put("IDSB", CodePointSetDiff.create(CodePointSet.createNoDedup(0x002ffc, 0x002ffd, 0x0031ef, 0x0031ef), CodePointSet.getEmpty())); + properties.put("Ideo", CodePointSetDiff.create(CodePointSet.createNoDedup(0x018cff, 0x018cff, 0x02ebf0, 0x02ee5d), CodePointSet.getEmpty())); + properties.put("Lower", CodePointSetDiff.create(CodePointSet.createNoDedup(0x001c8a, 0x001c8a, 0x00a7cd, 0x00a7cd, 0x00a7db, 0x00a7db, 0x010d70, 0x010d85), CodePointSet.getEmpty())); + properties.put("Math", CodePointSetDiff.create(CodePointSet.createNoDedup(0x010d8e, 0x010d8f), CodePointSet.getEmpty())); + properties.put("OAlpha", CodePointSetDiff.create(CodePointSet.createNoDedup(0x000363, 0x00036f, 0x000897, 0x000897, 0x001dd3, 0x001de6, 0x010d69, 0x010d69, 0x010efc, 0x010efc, 0x0113b8, + 0x0113c0, 0x0113c2, 0x0113c2, 0x0113c5, 0x0113c5, 0x0113c7, 0x0113ca, 0x0113cc, 0x0113cd, 0x01611e, 0x01612e), CodePointSet.getEmpty())); + properties.put("OIDC", CodePointSetDiff.create(CodePointSet.createNoDedup(0x00200c, 0x00200d, 0x0030fb, 0x0030fb, 0x00ff65, 0x00ff65), CodePointSet.getEmpty())); + properties.put("STerm", CodePointSetDiff.create(CodePointSet.createNoDedup(0x0017d4, 0x0017d5, 0x001b4e, 0x001b4f, 0x001b7f, 0x001b7f, 0x002024, 0x002024, 0x002cf9, 0x002cfb, 0x00fe12, + 0x00fe12, 0x00fe15, 0x00fe16, 0x0113d4, 0x0113d5, 0x016d6e, 0x016d6f), CodePointSet.getEmpty())); + properties.put("Term", CodePointSetDiff.create(CodePointSet.createNoDedup(0x001b4e, 0x001b4f, 0x001b7f, 0x001b7f, 0x002024, 0x002024, 0x002cf9, 0x002cfb, 0x00fe12, 0x00fe12, 0x00fe15, + 0x00fe16, 0x0113d4, 0x0113d5, 0x016d6e, 0x016d6f), CodePointSet.createNoDedup(0x000836, 0x000836))); + properties.put("UIdeo", CodePointSetDiff.create(CodePointSet.createNoDedup(0x02ebf0, 0x02ee5d), CodePointSet.getEmpty())); + properties.put("Upper", CodePointSetDiff.create(CodePointSet.createNoDedup(0x001c89, 0x001c89, 0x00a7cb, 0x00a7cc, 0x00a7da, 0x00a7da, 0x00a7dc, 0x00a7dc, 0x010d50, 0x010d65), + CodePointSet.getEmpty())); + properties.put("XIDC", + CodePointSetDiff.create(CodePointSet.createNoDedup(0x000897, 0x000897, 0x001c89, 0x001c8a, 0x00200c, 0x00200d, 0x0030fb, 0x0030fb, 0x00a7cb, 0x00a7cd, 0x00a7da, 0x00a7dc, + 0x00ff65, 0x00ff65, 0x0105c0, 0x0105f3, 0x010d40, 0x010d65, 0x010d69, 0x010d6d, 0x010d6f, 0x010d85, 0x010ec2, 0x010ec4, 0x010efc, 0x010efc, 0x011380, 0x011389, + 0x01138b, 0x01138b, 0x01138e, 0x01138e, 0x011390, 0x0113b5, 0x0113b7, 0x0113c0, 0x0113c2, 0x0113c2, 0x0113c5, 0x0113c5, 0x0113c7, 0x0113ca, 0x0113cc, 0x0113d3, + 0x0113e1, 0x0113e2, 0x0116d0, 0x0116e3, 0x011bc0, 0x011be0, 0x011bf0, 0x011bf9, 0x011f5a, 0x011f5a, 0x013460, 0x0143fa, 0x016100, 0x016139, 0x016d40, 0x016d6c, + 0x016d70, 0x016d79, 0x018cff, 0x018cff, 0x01ccf0, 0x01ccf9, 0x01e5d0, 0x01e5fa, 0x02ebf0, 0x02ee5d), CodePointSet.getEmpty())); + properties.put("XIDS", + CodePointSetDiff.create(CodePointSet.createNoDedup(0x001c89, 0x001c8a, 0x00a7cb, 0x00a7cd, 0x00a7da, 0x00a7dc, 0x0105c0, 0x0105f3, 0x010d4a, 0x010d65, 0x010d6f, 0x010d85, + 0x010ec2, 0x010ec4, 0x011380, 0x011389, 0x01138b, 0x01138b, 0x01138e, 0x01138e, 0x011390, 0x0113b5, 0x0113b7, 0x0113b7, 0x0113d1, 0x0113d1, 0x0113d3, 0x0113d3, + 0x011bc0, 0x011be0, 0x013460, 0x0143fa, 0x016100, 0x01611d, 0x016d40, 0x016d6c, 0x018cff, 0x018cff, 0x01e5d0, 0x01e5ed, 0x01e5f0, 0x01e5f0, 0x02ebf0, 0x02ee5d), + CodePointSet.getEmpty())); + properties.put("blk=CJK_Ext_I", CodePointSetDiff.create(CodePointSet.createNoDedup(0x02ebf0, 0x02ee5f), CodePointSet.getEmpty())); + properties.put("blk=Egyptian_Hieroglyphs_Ext_A", CodePointSetDiff.create(CodePointSet.createNoDedup(0x013460, 0x0143ff), CodePointSet.getEmpty())); + properties.put("blk=Garay", CodePointSetDiff.create(CodePointSet.createNoDedup(0x010d40, 0x010d8f), CodePointSet.getEmpty())); + properties.put("blk=Gurung_Khema", CodePointSetDiff.create(CodePointSet.createNoDedup(0x016100, 0x01613f), CodePointSet.getEmpty())); + properties.put("blk=Kirat_Rai", CodePointSetDiff.create(CodePointSet.createNoDedup(0x016d40, 0x016d7f), CodePointSet.getEmpty())); + properties.put("blk=Myanmar_Ext_C", CodePointSetDiff.create(CodePointSet.createNoDedup(0x0116d0, 0x0116ff), CodePointSet.getEmpty())); + properties.put("blk=NB", CodePointSetDiff.create(CodePointSet.getEmpty(), CodePointSet.createNoDedup(0x0105c0, 0x0105ff, 0x010d40, 0x010d8f, 0x011380, 0x0113ff, 0x0116d0, 0x0116ff, 0x011bc0, + 0x011bff, 0x013460, 0x0143ff, 0x016100, 0x01613f, 0x016d40, 0x016d7f, 0x01cc00, 0x01cebf, 0x01e5d0, 0x01e5ff, 0x02ebf0, 0x02ee5f))); + properties.put("blk=Ol_Onal", CodePointSetDiff.create(CodePointSet.createNoDedup(0x01e5d0, 0x01e5ff), CodePointSet.getEmpty())); + properties.put("blk=Sunuwar", CodePointSetDiff.create(CodePointSet.createNoDedup(0x011bc0, 0x011bff), CodePointSet.getEmpty())); + properties.put("blk=Symbols_For_Legacy_Computing_Sup", CodePointSetDiff.create(CodePointSet.createNoDedup(0x01cc00, 0x01cebf), CodePointSet.getEmpty())); + properties.put("blk=Todhri", CodePointSetDiff.create(CodePointSet.createNoDedup(0x0105c0, 0x0105ff), CodePointSet.getEmpty())); + properties.put("blk=Tulu_Tigalari", CodePointSetDiff.create(CodePointSet.createNoDedup(0x011380, 0x0113ff), CodePointSet.getEmpty())); + properties.put("gc=C", + CodePointSetDiff.create(CodePointSet.getEmpty(), CodePointSet.createNoDedup(0x000897, 0x000897, 0x001b4e, 0x001b4f, 0x001b7f, 0x001b7f, 0x001c89, 0x001c8a, 0x002427, 0x002429, + 0x002ffc, 0x002fff, 0x0031e4, 0x0031e5, 0x0031ef, 0x0031ef, 0x00a7cb, 0x00a7cd, 0x00a7da, 0x00a7dc, 0x0105c0, 0x0105f3, 0x010d40, 0x010d65, 0x010d69, 0x010d85, + 0x010d8e, 0x010d8f, 0x010ec2, 0x010ec4, 0x010efc, 0x010efc, 0x011380, 0x011389, 0x01138b, 0x01138b, 0x01138e, 0x01138e, 0x011390, 0x0113b5, 0x0113b7, 0x0113c0, + 0x0113c2, 0x0113c2, 0x0113c5, 0x0113c5, 0x0113c7, 0x0113ca, 0x0113cc, 0x0113d5, 0x0113d7, 0x0113d8, 0x0113e1, 0x0113e2, 0x0116d0, 0x0116e3, 0x011bc0, 0x011be1, + 0x011bf0, 0x011bf9, 0x011f5a, 0x011f5a, 0x013460, 0x0143fa, 0x016100, 0x016139, 0x016d40, 0x016d79, 0x018cff, 0x018cff, 0x01cc00, 0x01ccf9, 0x01cd00, 0x01ceb3, + 0x01e5d0, 0x01e5fa, 0x01e5ff, 0x01e5ff, 0x01f8b2, 0x01f8bb, 0x01f8c0, 0x01f8c1, 0x01fa89, 0x01fa89, 0x01fa8f, 0x01fa8f, 0x01fabe, 0x01fabe, 0x01fac6, 0x01fac6, + 0x01fadc, 0x01fadc, 0x01fadf, 0x01fadf, 0x01fae9, 0x01fae9, 0x01fbcb, 0x01fbef, 0x02ebf0, 0x02ee5d))); + properties.put("gc=Cn", + CodePointSetDiff.create(CodePointSet.getEmpty(), CodePointSet.createNoDedup(0x000897, 0x000897, 0x001b4e, 0x001b4f, 0x001b7f, 0x001b7f, 0x001c89, 0x001c8a, 0x002427, 0x002429, + 0x002ffc, 0x002fff, 0x0031e4, 0x0031e5, 0x0031ef, 0x0031ef, 0x00a7cb, 0x00a7cd, 0x00a7da, 0x00a7dc, 0x0105c0, 0x0105f3, 0x010d40, 0x010d65, 0x010d69, 0x010d85, + 0x010d8e, 0x010d8f, 0x010ec2, 0x010ec4, 0x010efc, 0x010efc, 0x011380, 0x011389, 0x01138b, 0x01138b, 0x01138e, 0x01138e, 0x011390, 0x0113b5, 0x0113b7, 0x0113c0, + 0x0113c2, 0x0113c2, 0x0113c5, 0x0113c5, 0x0113c7, 0x0113ca, 0x0113cc, 0x0113d5, 0x0113d7, 0x0113d8, 0x0113e1, 0x0113e2, 0x0116d0, 0x0116e3, 0x011bc0, 0x011be1, + 0x011bf0, 0x011bf9, 0x011f5a, 0x011f5a, 0x013460, 0x0143fa, 0x016100, 0x016139, 0x016d40, 0x016d79, 0x018cff, 0x018cff, 0x01cc00, 0x01ccf9, 0x01cd00, 0x01ceb3, + 0x01e5d0, 0x01e5fa, 0x01e5ff, 0x01e5ff, 0x01f8b2, 0x01f8bb, 0x01f8c0, 0x01f8c1, 0x01fa89, 0x01fa89, 0x01fa8f, 0x01fa8f, 0x01fabe, 0x01fabe, 0x01fac6, 0x01fac6, + 0x01fadc, 0x01fadc, 0x01fadf, 0x01fadf, 0x01fae9, 0x01fae9, 0x01fbcb, 0x01fbef, 0x02ebf0, 0x02ee5d))); + properties.put("gc=L", + CodePointSetDiff.create(CodePointSet.createNoDedup(0x001c89, 0x001c8a, 0x00a7cb, 0x00a7cd, 0x00a7da, 0x00a7dc, 0x0105c0, 0x0105f3, 0x010d4a, 0x010d65, 0x010d6f, 0x010d85, + 0x010ec2, 0x010ec4, 0x011380, 0x011389, 0x01138b, 0x01138b, 0x01138e, 0x01138e, 0x011390, 0x0113b5, 0x0113b7, 0x0113b7, 0x0113d1, 0x0113d1, 0x0113d3, 0x0113d3, + 0x011bc0, 0x011be0, 0x013460, 0x0143fa, 0x016100, 0x01611d, 0x016d40, 0x016d6c, 0x018cff, 0x018cff, 0x01e5d0, 0x01e5ed, 0x01e5f0, 0x01e5f0, 0x02ebf0, 0x02ee5d), + CodePointSet.getEmpty())); + properties.put("gc=LC", CodePointSetDiff.create(CodePointSet.createNoDedup(0x001c89, 0x001c8a, 0x00a7cb, 0x00a7cd, 0x00a7da, 0x00a7dc, 0x010d50, 0x010d65, 0x010d70, 0x010d85), + CodePointSet.getEmpty())); + properties.put("gc=Ll", CodePointSetDiff.create(CodePointSet.createNoDedup(0x001c8a, 0x001c8a, 0x00a7cd, 0x00a7cd, 0x00a7db, 0x00a7db, 0x010d70, 0x010d85), CodePointSet.getEmpty())); + properties.put("gc=Lm", CodePointSetDiff.create(CodePointSet.createNoDedup(0x010d4e, 0x010d4e, 0x010d6f, 0x010d6f, 0x016d40, 0x016d42, 0x016d6b, 0x016d6c), CodePointSet.getEmpty())); + properties.put("gc=Lo", + CodePointSetDiff.create(CodePointSet.createNoDedup(0x0105c0, 0x0105f3, 0x010d4a, 0x010d4d, 0x010d4f, 0x010d4f, 0x010ec2, 0x010ec4, 0x011380, 0x011389, 0x01138b, 0x01138b, + 0x01138e, 0x01138e, 0x011390, 0x0113b5, 0x0113b7, 0x0113b7, 0x0113d1, 0x0113d1, 0x0113d3, 0x0113d3, 0x011bc0, 0x011be0, 0x013460, 0x0143fa, 0x016100, 0x01611d, + 0x016d43, 0x016d6a, 0x018cff, 0x018cff, 0x01e5d0, 0x01e5ed, 0x01e5f0, 0x01e5f0, 0x02ebf0, 0x02ee5d), CodePointSet.getEmpty())); + properties.put("gc=Lu", CodePointSetDiff.create(CodePointSet.createNoDedup(0x001c89, 0x001c89, 0x00a7cb, 0x00a7cc, 0x00a7da, 0x00a7da, 0x00a7dc, 0x00a7dc, 0x010d50, 0x010d65), + CodePointSet.getEmpty())); + properties.put("gc=M", + CodePointSetDiff.create( + CodePointSet.createNoDedup(0x000897, 0x000897, 0x010d69, 0x010d6d, 0x010efc, 0x010efc, 0x0113b8, 0x0113c0, 0x0113c2, 0x0113c2, 0x0113c5, 0x0113c5, 0x0113c7, + 0x0113ca, 0x0113cc, 0x0113d0, 0x0113d2, 0x0113d2, 0x0113e1, 0x0113e2, 0x011f5a, 0x011f5a, 0x01611e, 0x01612f, 0x01e5ee, 0x01e5ef), + CodePointSet.getEmpty())); + properties.put("gc=Mc", CodePointSetDiff.create(CodePointSet.createNoDedup(0x0113b8, 0x0113ba, 0x0113c2, 0x0113c2, 0x0113c5, 0x0113c5, 0x0113c7, 0x0113ca, 0x0113cc, 0x0113cd, 0x0113cf, + 0x0113cf, 0x01171e, 0x01171e, 0x01612a, 0x01612c), CodePointSet.getEmpty())); + properties.put("gc=Mn", + CodePointSetDiff.create( + CodePointSet.createNoDedup(0x000897, 0x000897, 0x010d69, 0x010d6d, 0x010efc, 0x010efc, 0x0113bb, 0x0113c0, 0x0113ce, 0x0113ce, 0x0113d0, 0x0113d0, 0x0113d2, + 0x0113d2, 0x0113e1, 0x0113e2, 0x011f5a, 0x011f5a, 0x01611e, 0x016129, 0x01612d, 0x01612f, 0x01e5ee, 0x01e5ef), + CodePointSet.createNoDedup(0x01171e, 0x01171e))); + properties.put("gc=N", CodePointSetDiff.create( + CodePointSet.createNoDedup(0x010d40, 0x010d49, 0x0116d0, 0x0116e3, 0x011bf0, 0x011bf9, 0x016130, 0x016139, 0x016d70, 0x016d79, 0x01ccf0, 0x01ccf9, 0x01e5f1, 0x01e5fa), + CodePointSet.getEmpty())); + properties.put("gc=Nd", CodePointSetDiff.create( + CodePointSet.createNoDedup(0x010d40, 0x010d49, 0x0116d0, 0x0116e3, 0x011bf0, 0x011bf9, 0x016130, 0x016139, 0x016d70, 0x016d79, 0x01ccf0, 0x01ccf9, 0x01e5f1, 0x01e5fa), + CodePointSet.getEmpty())); + properties.put("gc=P", CodePointSetDiff.create(CodePointSet.createNoDedup(0x001b4e, 0x001b4f, 0x001b7f, 0x001b7f, 0x010d6e, 0x010d6e, 0x0113d4, 0x0113d5, 0x0113d7, 0x0113d8, 0x011be1, + 0x011be1, 0x016d6d, 0x016d6f, 0x01e5ff, 0x01e5ff), CodePointSet.getEmpty())); + properties.put("gc=Pd", CodePointSetDiff.create(CodePointSet.createNoDedup(0x010d6e, 0x010d6e), CodePointSet.getEmpty())); + properties.put("gc=Po", CodePointSetDiff.create( + CodePointSet.createNoDedup(0x001b4e, 0x001b4f, 0x001b7f, 0x001b7f, 0x0113d4, 0x0113d5, 0x0113d7, 0x0113d8, 0x011be1, 0x011be1, 0x016d6d, 0x016d6f, 0x01e5ff, 0x01e5ff), + CodePointSet.getEmpty())); + properties.put("gc=S", + CodePointSetDiff.create(CodePointSet.createNoDedup(0x002427, 0x002429, 0x002ffc, 0x002fff, 0x0031e4, 0x0031e5, 0x0031ef, 0x0031ef, 0x010d8e, 0x010d8f, 0x01cc00, 0x01ccef, + 0x01cd00, 0x01ceb3, 0x01f8b2, 0x01f8bb, 0x01f8c0, 0x01f8c1, 0x01fa89, 0x01fa89, 0x01fa8f, 0x01fa8f, 0x01fabe, 0x01fabe, 0x01fac6, 0x01fac6, 0x01fadc, 0x01fadc, + 0x01fadf, 0x01fadf, 0x01fae9, 0x01fae9, 0x01fbcb, 0x01fbef), CodePointSet.getEmpty())); + properties.put("gc=Sm", CodePointSetDiff.create(CodePointSet.createNoDedup(0x010d8e, 0x010d8f), CodePointSet.getEmpty())); + properties.put("gc=So", + CodePointSetDiff.create(CodePointSet.createNoDedup(0x002427, 0x002429, 0x002ffc, 0x002fff, 0x0031e4, 0x0031e5, 0x0031ef, 0x0031ef, 0x01cc00, 0x01ccef, 0x01cd00, 0x01ceb3, + 0x01f8b2, 0x01f8bb, 0x01f8c0, 0x01f8c1, 0x01fa89, 0x01fa89, 0x01fa8f, 0x01fa8f, 0x01fabe, 0x01fabe, 0x01fac6, 0x01fac6, 0x01fadc, 0x01fadc, 0x01fadf, 0x01fadf, + 0x01fae9, 0x01fae9, 0x01fbcb, 0x01fbef), CodePointSet.getEmpty())); + properties.put("sc=Arab", CodePointSetDiff.create(CodePointSet.createNoDedup(0x000897, 0x000897, 0x010ec2, 0x010ec4, 0x010efc, 0x010efc), CodePointSet.getEmpty())); + properties.put("sc=Bali", CodePointSetDiff.create(CodePointSet.createNoDedup(0x001b4e, 0x001b4f, 0x001b7f, 0x001b7f), CodePointSet.getEmpty())); + properties.put("sc=Cyrl", CodePointSetDiff.create(CodePointSet.createNoDedup(0x001c89, 0x001c8a), CodePointSet.getEmpty())); + properties.put("sc=Egyp", CodePointSetDiff.create(CodePointSet.createNoDedup(0x013460, 0x0143fa), CodePointSet.getEmpty())); + properties.put("sc=Gara", CodePointSetDiff.create(CodePointSet.createNoDedup(0x010d40, 0x010d65, 0x010d69, 0x010d85, 0x010d8e, 0x010d8f), CodePointSet.getEmpty())); + properties.put("sc=Gukh", CodePointSetDiff.create(CodePointSet.createNoDedup(0x016100, 0x016139), CodePointSet.getEmpty())); + properties.put("sc=Hani", CodePointSetDiff.create(CodePointSet.createNoDedup(0x02ebf0, 0x02ee5d), CodePointSet.getEmpty())); + properties.put("sc=Kawi", CodePointSetDiff.create(CodePointSet.createNoDedup(0x011f5a, 0x011f5a), CodePointSet.getEmpty())); + properties.put("sc=Kits", CodePointSetDiff.create(CodePointSet.createNoDedup(0x018cff, 0x018cff), CodePointSet.getEmpty())); + properties.put("sc=Krai", CodePointSetDiff.create(CodePointSet.createNoDedup(0x016d40, 0x016d79), CodePointSet.getEmpty())); + properties.put("sc=Latn", CodePointSetDiff.create(CodePointSet.createNoDedup(0x00a7cb, 0x00a7cd, 0x00a7da, 0x00a7dc), CodePointSet.getEmpty())); + properties.put("sc=Mymr", CodePointSetDiff.create(CodePointSet.createNoDedup(0x0116d0, 0x0116e3), CodePointSet.getEmpty())); + properties.put("sc=Onao", CodePointSetDiff.create(CodePointSet.createNoDedup(0x01e5d0, 0x01e5fa, 0x01e5ff, 0x01e5ff), CodePointSet.getEmpty())); + properties.put("sc=Sunu", CodePointSetDiff.create(CodePointSet.createNoDedup(0x011bc0, 0x011be1, 0x011bf0, 0x011bf9), CodePointSet.getEmpty())); + properties.put("sc=Todr", CodePointSetDiff.create(CodePointSet.createNoDedup(0x0105c0, 0x0105f3), CodePointSet.getEmpty())); + properties.put("sc=Tutg", CodePointSetDiff.create(CodePointSet.createNoDedup(0x011380, 0x011389, 0x01138b, 0x01138b, 0x01138e, 0x01138e, 0x011390, 0x0113b5, 0x0113b7, 0x0113c0, 0x0113c2, + 0x0113c2, 0x0113c5, 0x0113c5, 0x0113c7, 0x0113ca, 0x0113cc, 0x0113d5, 0x0113d7, 0x0113d8, 0x0113e1, 0x0113e2), CodePointSet.getEmpty())); + properties.put("sc=Zyyy", + CodePointSetDiff.create(CodePointSet.createNoDedup(0x002427, 0x002429, 0x002ffc, 0x002fff, 0x0031e4, 0x0031e5, 0x0031ef, 0x0031ef, 0x01cc00, 0x01ccf9, 0x01cd00, 0x01ceb3, + 0x01f8b2, 0x01f8bb, 0x01f8c0, 0x01f8c1, 0x01fa89, 0x01fa89, 0x01fa8f, 0x01fa8f, 0x01fabe, 0x01fabe, 0x01fac6, 0x01fac6, 0x01fadc, 0x01fadc, 0x01fadf, 0x01fadf, + 0x01fae9, 0x01fae9, 0x01fbcb, 0x01fbef), CodePointSet.getEmpty())); + properties.put("sc=Zzzz", + CodePointSetDiff.create(CodePointSet.getEmpty(), CodePointSet.createNoDedup(0x000897, 0x000897, 0x001b4e, 0x001b4f, 0x001b7f, 0x001b7f, 0x001c89, 0x001c8a, 0x002427, 0x002429, + 0x002ffc, 0x002fff, 0x0031e4, 0x0031e5, 0x0031ef, 0x0031ef, 0x00a7cb, 0x00a7cd, 0x00a7da, 0x00a7dc, 0x0105c0, 0x0105f3, 0x010d40, 0x010d65, 0x010d69, 0x010d85, + 0x010d8e, 0x010d8f, 0x010ec2, 0x010ec4, 0x010efc, 0x010efc, 0x011380, 0x011389, 0x01138b, 0x01138b, 0x01138e, 0x01138e, 0x011390, 0x0113b5, 0x0113b7, 0x0113c0, + 0x0113c2, 0x0113c2, 0x0113c5, 0x0113c5, 0x0113c7, 0x0113ca, 0x0113cc, 0x0113d5, 0x0113d7, 0x0113d8, 0x0113e1, 0x0113e2, 0x0116d0, 0x0116e3, 0x011bc0, 0x011be1, + 0x011bf0, 0x011bf9, 0x011f5a, 0x011f5a, 0x013460, 0x0143fa, 0x016100, 0x016139, 0x016d40, 0x016d79, 0x018cff, 0x018cff, 0x01cc00, 0x01ccf9, 0x01cd00, 0x01ceb3, + 0x01e5d0, 0x01e5fa, 0x01e5ff, 0x01e5ff, 0x01f8b2, 0x01f8bb, 0x01f8c0, 0x01f8c1, 0x01fa89, 0x01fa89, 0x01fa8f, 0x01fa8f, 0x01fabe, 0x01fabe, 0x01fac6, 0x01fac6, + 0x01fadc, 0x01fadc, 0x01fadf, 0x01fadf, 0x01fae9, 0x01fae9, 0x01fbcb, 0x01fbef, 0x02ebf0, 0x02ee5d))); + properties.put("scx=Adlm", CodePointSetDiff.create(CodePointSet.createNoDedup(0x00204f, 0x00204f, 0x002e41, 0x002e41), CodePointSet.getEmpty())); + properties.put("scx=Aghb", CodePointSetDiff.create(CodePointSet.createNoDedup(0x000304, 0x000304, 0x000331, 0x000331, 0x00035e, 0x00035e), CodePointSet.getEmpty())); + properties.put("scx=Arab", CodePointSetDiff.create(CodePointSet.createNoDedup(0x000897, 0x000897, 0x00204f, 0x00204f, 0x002e41, 0x002e41, 0x010ec2, 0x010ec4, 0x010efc, 0x010efc), + CodePointSet.getEmpty())); + properties.put("scx=Armn", CodePointSetDiff.create(CodePointSet.createNoDedup(0x000308, 0x000308), CodePointSet.getEmpty())); + properties.put("scx=Avst", CodePointSetDiff.create(CodePointSet.createNoDedup(0x0000b7, 0x0000b7, 0x002e30, 0x002e31), CodePointSet.getEmpty())); + properties.put("scx=Bali", CodePointSetDiff.create(CodePointSet.createNoDedup(0x001b4e, 0x001b4f, 0x001b7f, 0x001b7f), CodePointSet.getEmpty())); + properties.put("scx=Beng", CodePointSetDiff.create(CodePointSet.createNoDedup(0x0002bc, 0x0002bc), CodePointSet.getEmpty())); + properties.put("scx=Bopo", CodePointSetDiff.create(CodePointSet.createNoDedup(0x0002c7, 0x0002c7, 0x0002c9, 0x0002cb, 0x0002d9, 0x0002d9), CodePointSet.getEmpty())); + properties.put("scx=Cari", CodePointSetDiff.create(CodePointSet.createNoDedup(0x0000b7, 0x0000b7, 0x00205a, 0x00205a, 0x00205d, 0x00205d, 0x002e31, 0x002e31), CodePointSet.getEmpty())); + properties.put("scx=Cher", CodePointSetDiff.create(CodePointSet.createNoDedup(0x000300, 0x000302, 0x000304, 0x000304, 0x00030b, 0x00030c, 0x000323, 0x000324, 0x000330, 0x000331), + CodePointSet.getEmpty())); + properties.put("scx=Copt", CodePointSetDiff.create( + CodePointSet.createNoDedup(0x0000b7, 0x0000b7, 0x000300, 0x000300, 0x000304, 0x000305, 0x000307, 0x000307, 0x000374, 0x000375, 0x002e17, 0x002e17), CodePointSet.getEmpty())); + properties.put("scx=Cyrl", CodePointSetDiff.create(CodePointSet.createNoDedup(0x0002bc, 0x0002bc, 0x000300, 0x000302, 0x000304, 0x000304, 0x000306, 0x000306, 0x000308, 0x000308, 0x00030b, + 0x00030b, 0x000311, 0x000311, 0x001c89, 0x001c8a), CodePointSet.getEmpty())); + properties.put("scx=Deva", CodePointSetDiff.create(CodePointSet.createNoDedup(0x0002bc, 0x0002bc), CodePointSet.getEmpty())); + properties.put("scx=Dupl", CodePointSetDiff.create(CodePointSet.createNoDedup(0x0000b7, 0x0000b7, 0x000307, 0x000308, 0x00030a, 0x00030a, 0x000323, 0x000324, 0x002e3c, 0x002e3c), + CodePointSet.getEmpty())); + properties.put("scx=Egyp", CodePointSetDiff.create(CodePointSet.createNoDedup(0x013460, 0x0143fa), CodePointSet.getEmpty())); + properties.put("scx=Elba", CodePointSetDiff.create(CodePointSet.createNoDedup(0x0000b7, 0x0000b7, 0x000305, 0x000305), CodePointSet.getEmpty())); + properties.put("scx=Ethi", CodePointSetDiff.create(CodePointSet.createNoDedup(0x00030e, 0x00030e), CodePointSet.getEmpty())); + properties.put("scx=Gara", CodePointSetDiff.create( + CodePointSet.createNoDedup(0x00060c, 0x00060c, 0x00061b, 0x00061b, 0x00061f, 0x00061f, 0x010d40, 0x010d65, 0x010d69, 0x010d85, 0x010d8e, 0x010d8f), CodePointSet.getEmpty())); + properties.put("scx=Geor", CodePointSetDiff.create(CodePointSet.createNoDedup(0x0000b7, 0x0000b7, 0x000589, 0x000589, 0x00205a, 0x00205a, 0x002e31, 0x002e31), CodePointSet.getEmpty())); + properties.put("scx=Glag", CodePointSetDiff.create( + CodePointSet.createNoDedup(0x0000b7, 0x0000b7, 0x000303, 0x000303, 0x000305, 0x000305, 0x000589, 0x000589, 0x0010fb, 0x0010fb, 0x00205a, 0x00205a), CodePointSet.getEmpty())); + properties.put("scx=Gong", CodePointSetDiff.create(CodePointSet.createNoDedup(0x0000b7, 0x0000b7), CodePointSet.getEmpty())); + properties.put("scx=Goth", CodePointSetDiff.create(CodePointSet.createNoDedup(0x0000b7, 0x0000b7, 0x000304, 0x000305, 0x000308, 0x000308, 0x000331, 0x000331), CodePointSet.getEmpty())); + properties.put("scx=Grek", CodePointSetDiff.create(CodePointSet.createNoDedup(0x0000b7, 0x0000b7, 0x000300, 0x000301, 0x000304, 0x000304, 0x000306, 0x000306, 0x000308, 0x000308, 0x000313, + 0x000313, 0x000374, 0x000374, 0x00205d, 0x00205d), CodePointSet.getEmpty())); + properties.put("scx=Gukh", CodePointSetDiff.create(CodePointSet.createNoDedup(0x000965, 0x000965, 0x016100, 0x016139), CodePointSet.getEmpty())); + properties.put("scx=Hani", CodePointSetDiff.create(CodePointSet.createNoDedup(0x0000b7, 0x0000b7, 0x002ff0, 0x002fff, 0x0031e4, 0x0031e5, 0x0031ef, 0x0031ef, 0x02ebf0, 0x02ee5d), + CodePointSet.getEmpty())); + properties.put("scx=Hebr", CodePointSetDiff.create(CodePointSet.createNoDedup(0x000307, 0x000308), CodePointSet.getEmpty())); + properties.put("scx=Hung", CodePointSetDiff.create(CodePointSet.createNoDedup(0x00205a, 0x00205a, 0x00205d, 0x00205d, 0x002e31, 0x002e31, 0x002e41, 0x002e41), CodePointSet.getEmpty())); + properties.put("scx=Kana", CodePointSetDiff.create(CodePointSet.createNoDedup(0x000305, 0x000305, 0x000323, 0x000323), CodePointSet.getEmpty())); + properties.put("scx=Kawi", CodePointSetDiff.create(CodePointSet.createNoDedup(0x011f5a, 0x011f5a), CodePointSet.getEmpty())); + properties.put("scx=Kits", CodePointSetDiff.create(CodePointSet.createNoDedup(0x018cff, 0x018cff), CodePointSet.getEmpty())); + properties.put("scx=Knda", CodePointSetDiff.create(CodePointSet.createNoDedup(0x001cd3, 0x001cd3), CodePointSet.getEmpty())); + properties.put("scx=Krai", CodePointSetDiff.create(CodePointSet.createNoDedup(0x016d40, 0x016d79), CodePointSet.getEmpty())); + properties.put("scx=Kthi", CodePointSetDiff.create(CodePointSet.createNoDedup(0x002e31, 0x002e31), CodePointSet.getEmpty())); + properties.put("scx=Latn", + CodePointSetDiff.create( + CodePointSet.createNoDedup(0x0000b7, 0x0000b7, 0x0002bc, 0x0002bc, 0x0002c7, 0x0002c7, 0x0002c9, 0x0002cb, 0x0002cd, 0x0002cd, 0x0002d7, 0x0002d7, 0x0002d9, + 0x0002d9, 0x000300, 0x00030e, 0x000310, 0x000311, 0x000313, 0x000313, 0x000320, 0x000320, 0x000323, 0x000325, 0x00032d, 0x00032e, 0x000330, + 0x000331, 0x000358, 0x000358, 0x00035e, 0x00035e, 0x001df8, 0x001df8, 0x002e17, 0x002e17, 0x00a7cb, 0x00a7cd, 0x00a7da, 0x00a7dc), + CodePointSet.getEmpty())); + properties.put("scx=Lisu", CodePointSetDiff.create(CodePointSet.createNoDedup(0x0002bc, 0x0002bc, 0x0002cd, 0x0002cd, 0x00300a, 0x00300b), CodePointSet.getEmpty())); + properties.put("scx=Lyci", CodePointSetDiff.create(CodePointSet.createNoDedup(0x00205a, 0x00205a), CodePointSet.getEmpty())); + properties.put("scx=Lydi", CodePointSetDiff.create(CodePointSet.createNoDedup(0x0000b7, 0x0000b7, 0x002e31, 0x002e31), CodePointSet.getEmpty())); + properties.put("scx=Mahj", CodePointSetDiff.create(CodePointSet.createNoDedup(0x0000b7, 0x0000b7), CodePointSet.getEmpty())); + properties.put("scx=Mero", CodePointSetDiff.create(CodePointSet.createNoDedup(0x00205d, 0x00205d), CodePointSet.getEmpty())); + properties.put("scx=Mlym", CodePointSetDiff.create(CodePointSet.createNoDedup(0x001cf2, 0x001cf2), CodePointSet.getEmpty())); + properties.put("scx=Mong", CodePointSetDiff.create(CodePointSet.createNoDedup(0x003001, 0x003002, 0x003008, 0x00300b), CodePointSet.getEmpty())); + properties.put("scx=Mymr", CodePointSetDiff.create(CodePointSet.createNoDedup(0x0116d0, 0x0116e3), CodePointSet.getEmpty())); + properties.put("scx=Onao", CodePointSetDiff.create(CodePointSet.createNoDedup(0x000964, 0x000965, 0x01e5d0, 0x01e5fa, 0x01e5ff, 0x01e5ff), CodePointSet.getEmpty())); + properties.put("scx=Orkh", CodePointSetDiff.create(CodePointSet.createNoDedup(0x00205a, 0x00205a, 0x002e30, 0x002e30), CodePointSet.getEmpty())); + properties.put("scx=Osge", CodePointSetDiff.create(CodePointSet.createNoDedup(0x000301, 0x000301, 0x000304, 0x000304, 0x00030b, 0x00030b, 0x000358, 0x000358), CodePointSet.getEmpty())); + properties.put("scx=Perm", CodePointSetDiff.create(CodePointSet.createNoDedup(0x0000b7, 0x0000b7, 0x000300, 0x000300, 0x000306, 0x000308, 0x000313, 0x000313), CodePointSet.getEmpty())); + properties.put("scx=Phag", CodePointSetDiff.create(CodePointSet.createNoDedup(0x00202f, 0x00202f, 0x003002, 0x003002), CodePointSet.getEmpty())); + properties.put("scx=Runr", CodePointSetDiff.create(CodePointSet.createNoDedup(0x0016eb, 0x0016ed), CodePointSet.getEmpty())); + properties.put("scx=Samr", CodePointSetDiff.create(CodePointSet.createNoDedup(0x002e31, 0x002e31), CodePointSet.getEmpty())); + properties.put("scx=Shaw", CodePointSetDiff.create(CodePointSet.createNoDedup(0x0000b7, 0x0000b7), CodePointSet.getEmpty())); + properties.put("scx=Shrd", CodePointSetDiff.create(CodePointSet.createNoDedup(0x00a830, 0x00a835, 0x00a838, 0x00a838), CodePointSet.getEmpty())); + properties.put("scx=Sinh", CodePointSetDiff.create(CodePointSet.createNoDedup(0x001cf2, 0x001cf2), CodePointSet.getEmpty())); + properties.put("scx=Sunu", CodePointSetDiff.create(CodePointSet.createNoDedup(0x000300, 0x000301, 0x000303, 0x000303, 0x00030d, 0x00030d, 0x000310, 0x000310, 0x00032d, 0x00032d, 0x000331, + 0x000331, 0x011bc0, 0x011be1, 0x011bf0, 0x011bf9), CodePointSet.getEmpty())); + properties.put("scx=Syrc", CodePointSetDiff.create( + CodePointSet.createNoDedup(0x000303, 0x000304, 0x000307, 0x000308, 0x00030a, 0x00030a, 0x000320, 0x000320, 0x000323, 0x000325, 0x00032d, 0x00032e, 0x000330, 0x000330), + CodePointSet.getEmpty())); + properties.put("scx=Tale", CodePointSetDiff.create(CodePointSet.createNoDedup(0x000300, 0x000301, 0x000307, 0x000308, 0x00030c, 0x00030c), CodePointSet.getEmpty())); + properties.put("scx=Tang", CodePointSetDiff.create(CodePointSet.createNoDedup(0x002ff0, 0x002fff, 0x0031ef, 0x0031ef), CodePointSet.getEmpty())); + properties.put("scx=Tfng", CodePointSetDiff.create(CodePointSet.createNoDedup(0x000302, 0x000302, 0x000304, 0x000304, 0x000307, 0x000307, 0x000309, 0x000309), CodePointSet.getEmpty())); + properties.put("scx=Thai", CodePointSetDiff.create(CodePointSet.createNoDedup(0x0002bc, 0x0002bc, 0x0002d7, 0x0002d7, 0x000303, 0x000303, 0x000331, 0x000331), CodePointSet.getEmpty())); + properties.put("scx=Tibt", CodePointSetDiff.create(CodePointSet.createNoDedup(0x003008, 0x00300b), CodePointSet.getEmpty())); + properties.put("scx=Todr", CodePointSetDiff.create( + CodePointSet.createNoDedup(0x000301, 0x000301, 0x000304, 0x000304, 0x000307, 0x000307, 0x000311, 0x000311, 0x000313, 0x000313, 0x00035e, 0x00035e, 0x0105c0, 0x0105f3), + CodePointSet.getEmpty())); + properties.put("scx=Toto", CodePointSetDiff.create(CodePointSet.createNoDedup(0x0002bc, 0x0002bc), CodePointSet.getEmpty())); + properties.put("scx=Tutg", + CodePointSetDiff.create(CodePointSet.createNoDedup(0x000ce6, 0x000cef, 0x001cf2, 0x001cf2, 0x001cf4, 0x001cf4, 0x00a830, 0x00a835, 0x00a8f1, 0x00a8f1, 0x011380, 0x011389, + 0x01138b, 0x01138b, 0x01138e, 0x01138e, 0x011390, 0x0113b5, 0x0113b7, 0x0113c0, 0x0113c2, 0x0113c2, 0x0113c5, 0x0113c5, 0x0113c7, 0x0113ca, 0x0113cc, 0x0113d5, + 0x0113d7, 0x0113d8, 0x0113e1, 0x0113e2), CodePointSet.getEmpty())); + properties.put("scx=Zinh", CodePointSetDiff.create(CodePointSet.getEmpty(), CodePointSet.createNoDedup(0x000300, 0x00030e, 0x000310, 0x000311, 0x000313, 0x000313, 0x000320, 0x000320, 0x000323, + 0x000325, 0x00032d, 0x00032e, 0x000330, 0x000331, 0x000358, 0x000358, 0x00035e, 0x00035e))); + properties.put("scx=Zyyy", + CodePointSetDiff.create( + CodePointSet.createNoDedup(0x002427, 0x002429, 0x01cc00, 0x01ccf9, 0x01cd00, 0x01ceb3, 0x01f8b2, 0x01f8bb, 0x01f8c0, 0x01f8c1, 0x01fa89, 0x01fa89, 0x01fa8f, + 0x01fa8f, 0x01fabe, 0x01fabe, 0x01fac6, 0x01fac6, 0x01fadc, 0x01fadc, 0x01fadf, 0x01fadf, 0x01fae9, 0x01fae9, 0x01fbcb, 0x01fbef), + CodePointSet.createNoDedup(0x0000b7, 0x0000b7, 0x0002bc, 0x0002bc, 0x0002c7, 0x0002c7, 0x0002c9, 0x0002cb, 0x0002cd, 0x0002cd, 0x0002d7, 0x0002d7, 0x0002d9, + 0x0002d9, 0x000374, 0x000374, 0x0016eb, 0x0016ed, 0x00204f, 0x00204f, 0x00205a, 0x00205a, 0x00205d, 0x00205d, 0x002e17, 0x002e17, 0x002e30, + 0x002e31, 0x002e3c, 0x002e3c, 0x002e41, 0x002e41, 0x002ff0, 0x002ffb))); + properties.put("scx=Zzzz", + CodePointSetDiff.create(CodePointSet.getEmpty(), CodePointSet.createNoDedup(0x000897, 0x000897, 0x001b4e, 0x001b4f, 0x001b7f, 0x001b7f, 0x001c89, 0x001c8a, 0x002427, 0x002429, + 0x002ffc, 0x002fff, 0x0031e4, 0x0031e5, 0x0031ef, 0x0031ef, 0x00a7cb, 0x00a7cd, 0x00a7da, 0x00a7dc, 0x0105c0, 0x0105f3, 0x010d40, 0x010d65, 0x010d69, 0x010d85, + 0x010d8e, 0x010d8f, 0x010ec2, 0x010ec4, 0x010efc, 0x010efc, 0x011380, 0x011389, 0x01138b, 0x01138b, 0x01138e, 0x01138e, 0x011390, 0x0113b5, 0x0113b7, 0x0113c0, + 0x0113c2, 0x0113c2, 0x0113c5, 0x0113c5, 0x0113c7, 0x0113ca, 0x0113cc, 0x0113d5, 0x0113d7, 0x0113d8, 0x0113e1, 0x0113e2, 0x0116d0, 0x0116e3, 0x011bc0, 0x011be1, + 0x011bf0, 0x011bf9, 0x011f5a, 0x011f5a, 0x013460, 0x0143fa, 0x016100, 0x016139, 0x016d40, 0x016d79, 0x018cff, 0x018cff, 0x01cc00, 0x01ccf9, 0x01cd00, 0x01ceb3, + 0x01e5d0, 0x01e5fa, 0x01e5ff, 0x01e5ff, 0x01f8b2, 0x01f8bb, 0x01f8c0, 0x01f8c1, 0x01fa89, 0x01fa89, 0x01fa8f, 0x01fa8f, 0x01fabe, 0x01fabe, 0x01fac6, 0x01fac6, + 0x01fadc, 0x01fadc, 0x01fadf, 0x01fadf, 0x01fae9, 0x01fae9, 0x01fbcb, 0x01fbef, 0x02ebf0, 0x02ee5d))); + EconomicMap propAliases = EconomicMap.create(0); + EconomicMap gcAliases = EconomicMap.create(0); + EconomicMap scAliases = EconomicMap.create(14); + scAliases.put("Gara", "Gara"); + scAliases.put("Garay", "Gara"); + scAliases.put("Gukh", "Gukh"); + scAliases.put("Gurung_Khema", "Gukh"); + scAliases.put("Kirat_Rai", "Krai"); + scAliases.put("Krai", "Krai"); + scAliases.put("Ol_Onal", "Onao"); + scAliases.put("Onao", "Onao"); + scAliases.put("Sunu", "Sunu"); + scAliases.put("Sunuwar", "Sunu"); + scAliases.put("Todhri", "Todr"); + scAliases.put("Todr", "Todr"); + scAliases.put("Tulu_Tigalari", "Tutg"); + scAliases.put("Tutg", "Tutg"); + EconomicMap blkAliases = EconomicMap.create(15); + blkAliases.put("CJK_Ext_I", "CJK_Ext_I"); + blkAliases.put("CJK_Unified_Ideographs_Extension_I", "CJK_Ext_I"); + blkAliases.put("Egyptian_Hieroglyphs_Ext_A", "Egyptian_Hieroglyphs_Ext_A"); + blkAliases.put("Egyptian_Hieroglyphs_Extended_A", "Egyptian_Hieroglyphs_Ext_A"); + blkAliases.put("Garay", "Garay"); + blkAliases.put("Gurung_Khema", "Gurung_Khema"); + blkAliases.put("Kirat_Rai", "Kirat_Rai"); + blkAliases.put("Myanmar_Ext_C", "Myanmar_Ext_C"); + blkAliases.put("Myanmar_Extended_C", "Myanmar_Ext_C"); + blkAliases.put("Ol_Onal", "Ol_Onal"); + blkAliases.put("Sunuwar", "Sunuwar"); + blkAliases.put("Symbols_For_Legacy_Computing_Sup", "Symbols_For_Legacy_Computing_Sup"); + blkAliases.put("Symbols_For_Legacy_Computing_Supplement", "Symbols_For_Legacy_Computing_Sup"); + blkAliases.put("Todhri", "Todhri"); + blkAliases.put("Tulu_Tigalari", "Tulu_Tigalari"); + emoji.put("Basic_Emoji", ClassSetContents.createUnicodePropertyOfStrings( + CodePointSet.createNoDedup(0x01fa89, 0x01fa89, 0x01fa8f, 0x01fa8f, 0x01fabe, 0x01fabe, 0x01fac6, 0x01fac6, 0x01fadc, 0x01fadc, 0x01fadf, 0x01fadf, 0x01fae9, 0x01fae9), + stringSet())); + emoji.put("RGI_Emoji_Flag_Sequence", ClassSetContents.createUnicodePropertyOfStrings( + CodePointSet.getEmpty(), stringSet( + "\ud83c\udde8\ud83c\uddf6"))); + return new UnicodePropertyDataDiff(parent, properties, emoji, propAliases, gcAliases, scAliases, blkAliases); + } + /* GENERATED CODE END - KEEP THIS MARKER FOR AUTOMATIC UPDATES */ } diff --git a/regex/src/com.oracle.truffle.regex/src/com/oracle/truffle/regex/charset/UnicodePropertyDataVersion.java b/regex/src/com.oracle.truffle.regex/src/com/oracle/truffle/regex/charset/UnicodePropertyDataVersion.java index bc0a0dfa6491..adbe442e5712 100644 --- a/regex/src/com.oracle.truffle.regex/src/com/oracle/truffle/regex/charset/UnicodePropertyDataVersion.java +++ b/regex/src/com.oracle.truffle.regex/src/com/oracle/truffle/regex/charset/UnicodePropertyDataVersion.java @@ -46,6 +46,7 @@ public final class UnicodePropertyDataVersion { /* GENERATED CODE BEGIN - KEEP THIS MARKER FOR AUTOMATIC UPDATES */ public static final UnicodePropertyData UNICODE_15_0_0 = UnicodePropertyData.INSTANCE; public static final UnicodePropertyData UNICODE_15_1_0 = UnicodePropertyData.populateUNICODE_15_1_0(UNICODE_15_0_0); + public static final UnicodePropertyData UNICODE_16_0_0 = UnicodePropertyData.populateUNICODE_16_0_0(UNICODE_15_0_0); /* GENERATED CODE END - KEEP THIS MARKER FOR AUTOMATIC UPDATES */ } diff --git a/regex/src/com.oracle.truffle.regex/src/com/oracle/truffle/regex/tregex/parser/CaseFoldData.java b/regex/src/com.oracle.truffle.regex/src/com/oracle/truffle/regex/tregex/parser/CaseFoldData.java index 53045719c015..43ba04ce0083 100644 --- a/regex/src/com.oracle.truffle.regex/src/com/oracle/truffle/regex/tregex/parser/CaseFoldData.java +++ b/regex/src/com.oracle.truffle.regex/src/com/oracle/truffle/regex/tregex/parser/CaseFoldData.java @@ -84,9 +84,9 @@ public enum CaseFoldAlgorithm { private static CaseFoldEquivalenceTable getTable(CaseFoldUnfoldAlgorithm algorithm) { switch (algorithm) { case ECMAScriptNonUnicode: - return UNICODE_15_1_0_JS; + return UNICODE_16_0_0_JS; case ECMAScriptUnicode: - return UNICODE_15_1_0_SIMPLE; + return UNICODE_16_0_0_SIMPLE; case Ascii: return ASCII; case JavaUnicode: @@ -150,7 +150,7 @@ public static void applyCaseFoldUnfold(CodePointSetAccumulator codePointSet, Cod public static CodePointSet simpleCaseFold(CodePointSet codePointSet, CodePointSetAccumulator tmp) { tmp.addSet(codePointSet); - UNICODE_15_1_0_SIMPLE.applyCaseFold(tmp, codePointSet); + UNICODE_16_0_0_SIMPLE.applyCaseFold(tmp, codePointSet); tmp.intersectWith(FOLDED_CHARACTERS); return tmp.toCodePointSet(); } @@ -629,7 +629,7 @@ public void appendRangesTo(RangesBuffer buffer, int startIndex, int endIndex) { "fo", }; public static final int MAX_MULTI_CHAR_SEQUENCE_LENGTH = 4; - private static final CaseFoldEquivalenceTable UNICODE_15_1_0_SIMPLE = new CaseFoldEquivalenceTable(null, new CodePointSet[]{ + private static final CaseFoldEquivalenceTable UNICODE_16_0_0_SIMPLE = new CaseFoldEquivalenceTable(null, new CodePointSet[]{ rangeSet(0x00004b, 0x00004b, 0x00006b, 0x00006b, 0x00212a, 0x00212a), rangeSet(0x000053, 0x000053, 0x000073, 0x000073, 0x00017f, 0x00017f), rangeSet(0x0000b5, 0x0000b5, 0x00039c, 0x00039c, 0x0003bc, 0x0003bc), @@ -704,6 +704,7 @@ public void appendRangesTo(RangesBuffer buffer, int startIndex, int endIndex) { 0x000197, 0x000197, INTEGER_OFFSET, 209, 0x000198, 0x000199, ALTERNATING_AL, 0, 0x00019a, 0x00019a, INTEGER_OFFSET, 163, + 0x00019b, 0x00019b, INTEGER_OFFSET, 42561, 0x00019c, 0x00019c, INTEGER_OFFSET, 211, 0x00019d, 0x00019d, INTEGER_OFFSET, 213, 0x00019e, 0x00019e, INTEGER_OFFSET, 130, @@ -756,6 +757,7 @@ public void appendRangesTo(RangesBuffer buffer, int startIndex, int endIndex) { 0x000260, 0x000260, INTEGER_OFFSET, -205, 0x000261, 0x000261, INTEGER_OFFSET, 42315, 0x000263, 0x000263, INTEGER_OFFSET, -207, + 0x000264, 0x000264, INTEGER_OFFSET, 42343, 0x000265, 0x000265, INTEGER_OFFSET, 42280, 0x000266, 0x000266, INTEGER_OFFSET, 42308, 0x000268, 0x000268, INTEGER_OFFSET, -209, @@ -901,6 +903,7 @@ public void appendRangesTo(RangesBuffer buffer, int startIndex, int endIndex) { 0x001c86, 0x001c86, DIRECT_MAPPING, 23, 0x001c87, 0x001c87, DIRECT_MAPPING, 24, 0x001c88, 0x001c88, DIRECT_MAPPING, 25, + 0x001c89, 0x001c8a, ALTERNATING_UL, 0, 0x001c90, 0x001cba, INTEGER_OFFSET, -3008, 0x001cbd, 0x001cbf, INTEGER_OFFSET, -3008, 0x001d79, 0x001d79, INTEGER_OFFSET, 35332, @@ -1027,8 +1030,11 @@ public void appendRangesTo(RangesBuffer buffer, int startIndex, int endIndex) { 0x00a7c5, 0x00a7c5, INTEGER_OFFSET, -42307, 0x00a7c6, 0x00a7c6, INTEGER_OFFSET, -35384, 0x00a7c7, 0x00a7ca, ALTERNATING_UL, 0, + 0x00a7cb, 0x00a7cb, INTEGER_OFFSET, -42343, + 0x00a7cc, 0x00a7cd, ALTERNATING_AL, 0, 0x00a7d0, 0x00a7d1, ALTERNATING_AL, 0, - 0x00a7d6, 0x00a7d9, ALTERNATING_AL, 0, + 0x00a7d6, 0x00a7db, ALTERNATING_AL, 0, + 0x00a7dc, 0x00a7dc, INTEGER_OFFSET, -42561, 0x00a7f5, 0x00a7f6, ALTERNATING_UL, 0, 0x00ab53, 0x00ab53, INTEGER_OFFSET, -928, 0x00ab70, 0x00abbf, INTEGER_OFFSET, -38864, @@ -1049,6 +1055,8 @@ public void appendRangesTo(RangesBuffer buffer, int startIndex, int endIndex) { 0x0105bb, 0x0105bc, INTEGER_OFFSET, -39, 0x010c80, 0x010cb2, INTEGER_OFFSET, 64, 0x010cc0, 0x010cf2, INTEGER_OFFSET, -64, + 0x010d50, 0x010d65, INTEGER_OFFSET, 32, + 0x010d70, 0x010d85, INTEGER_OFFSET, -32, 0x0118a0, 0x0118bf, INTEGER_OFFSET, 32, 0x0118c0, 0x0118df, INTEGER_OFFSET, -32, 0x016e40, 0x016e5f, INTEGER_OFFSET, 32, @@ -1056,7 +1064,7 @@ public void appendRangesTo(RangesBuffer buffer, int startIndex, int endIndex) { 0x01e900, 0x01e921, INTEGER_OFFSET, 34, 0x01e922, 0x01e943, INTEGER_OFFSET, -34, }); - private static final CaseFoldEquivalenceTable UNICODE_15_1_0_JS = new CaseFoldEquivalenceTable(UNICODE_15_1_0_SIMPLE, new CodePointSet[]{ + private static final CaseFoldEquivalenceTable UNICODE_16_0_0_JS = new CaseFoldEquivalenceTable(UNICODE_16_0_0_SIMPLE, new CodePointSet[]{ rangeSet(0x000398, 0x000398, 0x0003b8, 0x0003b8, 0x0003d1, 0x0003d1), }, new int[]{ 0x00004b, 0x00005a, INTEGER_OFFSET, 32, @@ -1106,6 +1114,8 @@ public void appendRangesTo(RangesBuffer buffer, int startIndex, int endIndex) { 0x0105bb, 0x0105bc, INTEGER_OFFSET, 0, 0x010c80, 0x010cb2, INTEGER_OFFSET, 0, 0x010cc0, 0x010cf2, INTEGER_OFFSET, 0, + 0x010d50, 0x010d65, INTEGER_OFFSET, 0, + 0x010d70, 0x010d85, INTEGER_OFFSET, 0, 0x0118a0, 0x0118bf, INTEGER_OFFSET, 0, 0x0118c0, 0x0118df, INTEGER_OFFSET, 0, 0x016e40, 0x016e5f, INTEGER_OFFSET, 0, @@ -1113,12 +1123,21 @@ public void appendRangesTo(RangesBuffer buffer, int startIndex, int endIndex) { 0x01e900, 0x01e921, INTEGER_OFFSET, 0, 0x01e922, 0x01e943, INTEGER_OFFSET, 0, }); - private static final CaseFoldEquivalenceTable UNICODE_15_1_0_PY = new CaseFoldEquivalenceTable(UNICODE_15_1_0_SIMPLE, new CodePointSet[]{ + private static final CaseFoldEquivalenceTable UNICODE_15_1_0_PY = new CaseFoldEquivalenceTable(UNICODE_16_0_0_SIMPLE, new CodePointSet[]{ rangeSet(0x000049, 0x000049, 0x000069, 0x000069, 0x000130, 0x000131), }, new int[]{ 0x000049, 0x000049, DIRECT_MAPPING, 0, 0x000069, 0x000069, DIRECT_MAPPING, 0, 0x000130, 0x000131, DIRECT_MAPPING, 0, + 0x00019b, 0x00019b, INTEGER_OFFSET, 0, + 0x000264, 0x000264, INTEGER_OFFSET, 0, + 0x001c89, 0x001c8a, INTEGER_OFFSET, 0, + 0x00a7cb, 0x00a7cb, INTEGER_OFFSET, 0, + 0x00a7cc, 0x00a7cd, INTEGER_OFFSET, 0, + 0x00a7da, 0x00a7db, INTEGER_OFFSET, 0, + 0x00a7dc, 0x00a7dc, INTEGER_OFFSET, 0, + 0x010d50, 0x010d65, INTEGER_OFFSET, 0, + 0x010d70, 0x010d85, INTEGER_OFFSET, 0, }); private static final CaseFoldEquivalenceTable UNICODE_15_0_0_JAVA = new CaseFoldEquivalenceTable(UNICODE_15_1_0_PY, new CodePointSet[]{ }, new int[]{ @@ -1965,7 +1984,7 @@ public void appendRangesTo(RangesBuffer buffer, int startIndex, int endIndex) { 0x0004fc, 0x0004fe, 0x0004fe, 0x000500, 0x000500, 0x000502, 0x000502, 0x000504, 0x000504, 0x000506, 0x000506, 0x000508, 0x000508, 0x00050a, 0x00050a, 0x00050c, 0x00050c, 0x00050e, 0x00050e, 0x000510, 0x000510, 0x000512, 0x000512, 0x000514, 0x000514, 0x000516, 0x000516, 0x000518, 0x000518, 0x00051a, 0x00051a, 0x00051c, 0x00051c, 0x00051e, 0x00051e, 0x000520, 0x000520, 0x000522, 0x000522, 0x000524, 0x000524, 0x000526, 0x000526, 0x000528, 0x000528, 0x00052a, 0x00052a, 0x00052c, 0x00052c, 0x00052e, 0x00052e, 0x000531, 0x000556, 0x0010a0, - 0x0010c5, 0x0010c7, 0x0010c7, 0x0010cd, 0x0010cd, 0x0013f8, 0x0013fd, 0x001c80, 0x001c88, 0x001c90, 0x001cba, 0x001cbd, 0x001cbf, 0x001e00, 0x001e00, 0x001e02, 0x001e02, 0x001e04, + 0x0010c5, 0x0010c7, 0x0010c7, 0x0010cd, 0x0010cd, 0x0013f8, 0x0013fd, 0x001c80, 0x001c89, 0x001c90, 0x001cba, 0x001cbd, 0x001cbf, 0x001e00, 0x001e00, 0x001e02, 0x001e02, 0x001e04, 0x001e04, 0x001e06, 0x001e06, 0x001e08, 0x001e08, 0x001e0a, 0x001e0a, 0x001e0c, 0x001e0c, 0x001e0e, 0x001e0e, 0x001e10, 0x001e10, 0x001e12, 0x001e12, 0x001e14, 0x001e14, 0x001e16, 0x001e16, 0x001e18, 0x001e18, 0x001e1a, 0x001e1a, 0x001e1c, 0x001e1c, 0x001e1e, 0x001e1e, 0x001e20, 0x001e20, 0x001e22, 0x001e22, 0x001e24, 0x001e24, 0x001e26, 0x001e26, 0x001e28, 0x001e28, 0x001e2a, 0x001e2a, 0x001e2c, 0x001e2c, 0x001e2e, 0x001e2e, 0x001e30, 0x001e30, 0x001e32, 0x001e32, 0x001e34, 0x001e34, 0x001e36, 0x001e36, 0x001e38, 0x001e38, 0x001e3a, @@ -2001,9 +2020,9 @@ public void appendRangesTo(RangesBuffer buffer, int startIndex, int endIndex) { 0x00a77b, 0x00a77d, 0x00a77e, 0x00a780, 0x00a780, 0x00a782, 0x00a782, 0x00a784, 0x00a784, 0x00a786, 0x00a786, 0x00a78b, 0x00a78b, 0x00a78d, 0x00a78d, 0x00a790, 0x00a790, 0x00a792, 0x00a792, 0x00a796, 0x00a796, 0x00a798, 0x00a798, 0x00a79a, 0x00a79a, 0x00a79c, 0x00a79c, 0x00a79e, 0x00a79e, 0x00a7a0, 0x00a7a0, 0x00a7a2, 0x00a7a2, 0x00a7a4, 0x00a7a4, 0x00a7a6, 0x00a7a6, 0x00a7a8, 0x00a7a8, 0x00a7aa, 0x00a7ae, 0x00a7b0, 0x00a7b4, 0x00a7b6, 0x00a7b6, 0x00a7b8, 0x00a7b8, 0x00a7ba, 0x00a7ba, 0x00a7bc, 0x00a7bc, 0x00a7be, 0x00a7be, 0x00a7c0, - 0x00a7c0, 0x00a7c2, 0x00a7c2, 0x00a7c4, 0x00a7c7, 0x00a7c9, 0x00a7c9, 0x00a7d0, 0x00a7d0, 0x00a7d6, 0x00a7d6, 0x00a7d8, 0x00a7d8, 0x00a7f5, 0x00a7f5, 0x00ab70, 0x00abbf, 0x00fb05, - 0x00fb05, 0x00ff21, 0x00ff3a, 0x010400, 0x010427, 0x0104b0, 0x0104d3, 0x010570, 0x01057a, 0x01057c, 0x01058a, 0x01058c, 0x010592, 0x010594, 0x010595, 0x010c80, 0x010cb2, 0x0118a0, - 0x0118bf, 0x016e40, 0x016e5f, 0x01e900, 0x01e921); + 0x00a7c0, 0x00a7c2, 0x00a7c2, 0x00a7c4, 0x00a7c7, 0x00a7c9, 0x00a7c9, 0x00a7cb, 0x00a7cc, 0x00a7d0, 0x00a7d0, 0x00a7d6, 0x00a7d6, 0x00a7d8, 0x00a7d8, 0x00a7da, 0x00a7da, 0x00a7dc, + 0x00a7dc, 0x00a7f5, 0x00a7f5, 0x00ab70, 0x00abbf, 0x00fb05, 0x00fb05, 0x00ff21, 0x00ff3a, 0x010400, 0x010427, 0x0104b0, 0x0104d3, 0x010570, 0x01057a, 0x01057c, 0x01058a, 0x01058c, + 0x010592, 0x010594, 0x010595, 0x010c80, 0x010cb2, 0x010d50, 0x010d65, 0x0118a0, 0x0118bf, 0x016e40, 0x016e5f, 0x01e900, 0x01e921); /* GENERATED CODE END - KEEP THIS MARKER FOR AUTOMATIC UPDATES */ diff --git a/regex/src/com.oracle.truffle.regex/src/com/oracle/truffle/regex/tregex/parser/flavors/ECMAScriptFlavor.java b/regex/src/com.oracle.truffle.regex/src/com/oracle/truffle/regex/tregex/parser/flavors/ECMAScriptFlavor.java index 6f885bc2e1ff..126c15e1e0c9 100644 --- a/regex/src/com.oracle.truffle.regex/src/com/oracle/truffle/regex/tregex/parser/flavors/ECMAScriptFlavor.java +++ b/regex/src/com.oracle.truffle.regex/src/com/oracle/truffle/regex/tregex/parser/flavors/ECMAScriptFlavor.java @@ -56,7 +56,7 @@ public final class ECMAScriptFlavor extends RegexFlavor { public static final ECMAScriptFlavor INSTANCE = new ECMAScriptFlavor(); - public static final UnicodeProperties UNICODE = new UnicodeProperties(UnicodePropertyDataVersion.UNICODE_15_1_0, 0); + public static final UnicodeProperties UNICODE = new UnicodeProperties(UnicodePropertyDataVersion.UNICODE_16_0_0, 0); private ECMAScriptFlavor() { super(0); diff --git a/truffle/mx.truffle/suite.py b/truffle/mx.truffle/suite.py index 160ae847eb96..589fd49cdddb 100644 --- a/truffle/mx.truffle/suite.py +++ b/truffle/mx.truffle/suite.py @@ -145,22 +145,22 @@ "ICU4J" : { "moduleName" : "com.ibm.icu", - "digest" : "sha512:08720318b2d175ad8379306caacea7da181e51ce9e7410318dae11008ab4a8d6d7b1723136a1fd17b02b11efd24ce87cbe24413c1d5f8d7cb0d00c9d32c1b267", - "sourceDigest" : "sha512:0cc7bda1e4396249ff33cb692fe102a20c499fce53c79035a26ed3815760554246e5fd9bd5bf6f154cf2c823c0502fc573ce2987924c263cd371aaf3dadc7a8b", + "digest" : "sha512:5f4126df9bf28c2ea82b63b3c0d0f08a1e371b3fac0c7acab34a37f087927b1876535f4e0b889d28f20fcf42e816af00b3f302d48bc01c8dc13b49e40dd3927d", + "sourceDigest" : "sha512:25a05e8ceb88420e3fd77447fbf3687c6bec5ff17dc1a34a571a3b28aee1d7a2699fa8edce43e09f175ddbf35a58c8fa50a0b04631b47858e711308c55fbdfb2", "maven" : { "groupId" : "com.ibm.icu", "artifactId" : "icu4j", - "version" : "74.1", + "version" : "76.1", }, }, "ICU4J-CHARSET" : { "moduleName" : "com.ibm.icu.charset", - "digest" : "sha512:15457b170448676d299b20d6bb26909735645f6e3fe28efb6036ad4b94a91ee58bfbeb427adc9264fe6bfa23972b3dbd2df9c85f8285290ed2b035da6e51326b", - "sourceDigest" : "sha512:0f90efa00cb7c98af87f9fbe6a63f5d465d4cd9da9666d2cd04d7b3e588b1b9c3835403f5c9f2863d5cd93122ad004e888fb06da3bdd2b5f37e830ae699d2576", + "digest" : "sha512:61fa695e522babd5da17f1d4696f7f6b67eb25fa0adfd62704dc00c2f3289f099ace819607f782eae9b7042257c654b36de14278808e3bdfd1c46038141c8066", + "sourceDigest" : "sha512:8e8fc31c1afc42277fd54bd008de408f900589012d8544275250dde93642e123b776c12bc1b7cfa2803c0e11ec714d4758efab3690e65dd2bf052a51ada0f5f5", "maven" : { "groupId" : "com.ibm.icu", "artifactId" : "icu4j-charset", - "version" : "74.1", + "version" : "76.1", }, }, @@ -1248,6 +1248,7 @@ }, "description" : "ICU4J shaded library.", "allowsJavadocWarnings": True, + "forceJavac": True, "javac.lint.overrides" : 'none', "jacoco" : "exclude", "graalCompilerSourceEdition": "ignore", diff --git a/truffle/src/org.graalvm.shadowed.com.ibm.icu/src/org/graalvm/shadowed/com/ibm/icu/ICU4JFeature.java b/truffle/src/org.graalvm.shadowed.com.ibm.icu/src/org/graalvm/shadowed/com/ibm/icu/ICU4JFeature.java index cfc73c28a7b7..86a0a379d75d 100644 --- a/truffle/src/org.graalvm.shadowed.com.ibm.icu/src/org/graalvm/shadowed/com/ibm/icu/ICU4JFeature.java +++ b/truffle/src/org.graalvm.shadowed.com.ibm.icu/src/org/graalvm/shadowed/com/ibm/icu/ICU4JFeature.java @@ -105,84 +105,84 @@ public void beforeAnalysis(BeforeAnalysisAccess access) { List resourcePatterns = List.of( new ResourceEntry( "org.graalvm.shadowed.com.ibm.icu.util.UResourceBundle", - "org/graalvm/shadowed/com/ibm/icu/impl/data/icudt[^/]*/[^/]*\\.(?:res|lst)$"), + "org/graalvm/shadowed/com/ibm/icu/impl/data/icudata/[^/]*\\.(?:res|lst)$"), new ResourceEntry( "org.graalvm.shadowed.com.ibm.icu.charset.CharsetMBCS", - "org/graalvm/shadowed/com/ibm/icu/impl/data/icudt[^/]*/.*\\.cnv$"), + "org/graalvm/shadowed/com/ibm/icu/impl/data/icudata/.*\\.cnv$"), new ResourceEntry( "org.graalvm.shadowed.com.ibm.icu.impl.UCaseProps", - "org/graalvm/shadowed/com/ibm/icu/impl/data/icudt[^/]*/ucase\\.icu$"), + "org/graalvm/shadowed/com/ibm/icu/impl/data/icudata/ucase\\.icu$"), new ResourceEntry( "org.graalvm.shadowed.com.ibm.icu.impl.UCharacterName", - "org/graalvm/shadowed/com/ibm/icu/impl/data/icudt[^/]*/unames\\.icu$"), + "org/graalvm/shadowed/com/ibm/icu/impl/data/icudata/unames\\.icu$"), new ResourceEntry( "org.graalvm.shadowed.com.ibm.icu.impl.UCharacterProperty", - "org/graalvm/shadowed/com/ibm/icu/impl/data/icudt[^/]*/uprops\\.icu$"), + "org/graalvm/shadowed/com/ibm/icu/impl/data/icudata/uprops\\.icu$"), new ResourceEntry( "org.graalvm.shadowed.com.ibm.icu.impl.UCharacterProperty$LayoutProps", - "org/graalvm/shadowed/com/ibm/icu/impl/data/icudt[^/]*/ulayout\\.icu$"), + "org/graalvm/shadowed/com/ibm/icu/impl/data/icudata/ulayout\\.icu$"), new ResourceEntry( "org.graalvm.shadowed.com.ibm.icu.impl.UPropertyAliases", - "org/graalvm/shadowed/com/ibm/icu/impl/data/icudt[^/]*/pnames\\.icu$"), + "org/graalvm/shadowed/com/ibm/icu/impl/data/icudata/pnames\\.icu$"), new ResourceEntry( "org.graalvm.shadowed.com.ibm.icu.impl.EmojiProps", - "org/graalvm/shadowed/com/ibm/icu/impl/data/icudt[^/]*/uemoji\\.icu$"), + "org/graalvm/shadowed/com/ibm/icu/impl/data/icudata/uemoji\\.icu$"), new ResourceEntry( "org.graalvm.shadowed.com.ibm.icu.impl.UBiDiProps", - "org/graalvm/shadowed/com/ibm/icu/impl/data/icudt[^/]*/ubidi\\.icu$"), + "org/graalvm/shadowed/com/ibm/icu/impl/data/icudata/ubidi\\.icu$"), new ResourceEntry( "org.graalvm.shadowed.com.ibm.icu.impl.coll.CollationRoot", - "org/graalvm/shadowed/com/ibm/icu/impl/data/icudt[^/]*/coll/ucadata\\.icu$"), + "org/graalvm/shadowed/com/ibm/icu/impl/data/icudata/coll/ucadata\\.icu$"), new ResourceEntry(List.of( "org.graalvm.shadowed.com.ibm.icu.impl.coll.CollationLoader", "org.graalvm.shadowed.com.ibm.icu.text.Collator"), - "org/graalvm/shadowed/com/ibm/icu/impl/data/icudt[^/]*/coll/[^/]*\\.res$"), + "org/graalvm/shadowed/com/ibm/icu/impl/data/icudata/coll/[^/]*\\.res$"), new ResourceEntry( "org.graalvm.shadowed.com.ibm.icu.charset.UConverterAlias", - "org/graalvm/shadowed/com/ibm/icu/impl/data/icudt[^/]*/cnvalias\\.icu$"), + "org/graalvm/shadowed/com/ibm/icu/impl/data/icudata/cnvalias\\.icu$"), new ResourceEntry(List.of( "org.graalvm.shadowed.com.ibm.icu.impl.TimeZoneNamesImpl", "org.graalvm.shadowed.com.ibm.icu.impl.TimeZoneGenericNames", "org.graalvm.shadowed.com.ibm.icu.text.TimeZoneFormat"), - "org/graalvm/shadowed/com/ibm/icu/impl/data/icudt[^/]*/zone/.*"), + "org/graalvm/shadowed/com/ibm/icu/impl/data/icudata/zone/.*"), new ResourceEntry( "org.graalvm.shadowed.com.ibm.icu.impl.ICURegionDataTables", - "org/graalvm/shadowed/com/ibm/icu/impl/data/icudt[^/]*/region/.*"), + "org/graalvm/shadowed/com/ibm/icu/impl/data/icudata/region/.*"), new ResourceEntry(List.of( "org.graalvm.shadowed.com.ibm.icu.impl.ICULangDataTables", "org.graalvm.shadowed.com.ibm.icu.util.LocaleData"), - "org/graalvm/shadowed/com/ibm/icu/impl/data/icudt[^/]*/lang/.*"), + "org/graalvm/shadowed/com/ibm/icu/impl/data/icudata/lang/.*"), new ResourceEntry(List.of( "org.graalvm.shadowed.com.ibm.icu.impl.ICUCurrencyDisplayInfoProvider", "org.graalvm.shadowed.com.ibm.icu.impl.ICUCurrencyMetaInfo"), - "org/graalvm/shadowed/com/ibm/icu/impl/data/icudt[^/]*/curr/.*"), + "org/graalvm/shadowed/com/ibm/icu/impl/data/icudata/curr/.*"), new ResourceEntry(List.of( "org.graalvm.shadowed.com.ibm.icu.util.MeasureUnit", "org.graalvm.shadowed.com.ibm.icu.text.MeasureFormat", "org.graalvm.shadowed.com.ibm.icu.text.TimeUnitFormat", "org.graalvm.shadowed.com.ibm.icu.impl.number.LongNameHandler"), - "org/graalvm/shadowed/com/ibm/icu/impl/data/icudt[^/]*/unit/.*"), + "org/graalvm/shadowed/com/ibm/icu/impl/data/icudata/unit/.*"), new ResourceEntry(List.of( "org.graalvm.shadowed.com.ibm.icu.text.TransliteratorRegistry", "org.graalvm.shadowed.com.ibm.icu.text.Transliterator"), - "org/graalvm/shadowed/com/ibm/icu/impl/data/icudt[^/]*/translit/.*"), + "org/graalvm/shadowed/com/ibm/icu/impl/data/icudata/translit/.*"), new ResourceEntry( "org.graalvm.shadowed.com.ibm.icu.text.RuleBasedNumberFormat", - "org/graalvm/shadowed/com/ibm/icu/impl/data/icudt[^/]*/rbnf/.*"), + "org/graalvm/shadowed/com/ibm/icu/impl/data/icudata/rbnf/.*"), new ResourceEntry(List.of( "org.graalvm.shadowed.com.ibm.icu.text.BreakIteratorFactory", "org.graalvm.shadowed.com.ibm.icu.impl.breakiter.DictionaryBreakEngine", "org.graalvm.shadowed.com.ibm.icu.impl.SimpleFilteredSentenceBreakIterator$Builder"), - "org/graalvm/shadowed/com/ibm/icu/impl/data/icudt[^/]*/brkitr/.*"), + "org/graalvm/shadowed/com/ibm/icu/impl/data/icudata/brkitr/.*"), new ResourceEntry( "org.graalvm.shadowed.com.ibm.icu.text.SpoofChecker$SpoofData$DefaultData", - "org/graalvm/shadowed/com/ibm/icu/impl/data/icudt[^/]*/confusables\\.cfu"), + "org/graalvm/shadowed/com/ibm/icu/impl/data/icudata/confusables\\.cfu"), new ResourceEntry( "org.graalvm.shadowed.com.ibm.icu.text.StringPrep", - "org/graalvm/shadowed/com/ibm/icu/impl/data/icudt[^/]*/[^/]*\\.spp"), + "org/graalvm/shadowed/com/ibm/icu/impl/data/icudata/[^/]*\\.spp"), new ResourceEntry( "org.graalvm.shadowed.com.ibm.icu.impl.Normalizer2Impl", - "org/graalvm/shadowed/com/ibm/icu/impl/data/icudt[^/]*/[^/]*\\.nrm"), + "org/graalvm/shadowed/com/ibm/icu/impl/data/icudata/[^/]*\\.nrm"), new ResourceEntry( "org.graalvm.shadowed.com.ibm.icu.impl.duration.impl.ResourceBasedPeriodFormatterDataService", "org/graalvm/shadowed/com/ibm/icu/impl/duration/impl/data/.*"));