Dennis
fa7f22b2cf
std.uni: Use dstring for dchar tables ( #8889 )
...
* std.uni: use dstring for upper/lower/title tables
* std.uni: make tables use dstring
* Add space after cast for Dscanner
* Remove redundant semicolons
2024-01-10 17:48:25 +02:00
Dennis Korpel
135e9ad193
std.uni: optimize simpleCaseTable
...
Cuts size of simpleCaseTable entries in half (8 -> 4 bytes), reducing table size from 24 Kb to 12 Kb.
Still only 22 out of 32 bits per entry are actually used, so could be optimized further.
Using plain integers saves 10 ms semantic2 compile time.
2024-01-09 12:02:12 +01:00
Dennis Korpel
90715f3b07
std.uni: use dstring for compositionTable
2024-01-08 23:37:44 +01:00
Dennis Korpel
bdbce3b67d
Use static array for table
2024-01-08 00:02:21 +01:00
Dennis Korpel
bd8b943fa2
std.uni: optimize fullCaseTable
2024-01-07 11:35:29 +01:00
Dennis Korpel
89d36e1228
std.uni: use hexstrings for charset strings
2024-01-06 17:49:13 +01:00
Dennis Korpel
a11fb5e3ed
Upgrade std.uni to Unicode 15.1.0
2024-01-06 13:06:48 +01:00
richard (rikki) andrew cattermole
e848d44d7f
Emphasize DO NOT EDIT for the generated Unicode tables
2022-12-12 04:32:30 +13:00
richard (rikki) andrew cattermole
297370abc2
Add URL for Unicode table generator into the headers of the Unicode tables
2022-12-12 02:10:14 +13:00
richard (rikki) andrew cattermole
a1f2e760e7
Make Unicode tables module headers consistent and add DO NOT EDIT to it
2022-12-12 02:10:14 +13:00
richard (rikki) andrew cattermole
122df9272a
Upstream Unicode table generator and update tables to v15
2022-12-12 02:10:14 +13:00
Sebastian Wilzbach
42894784dd
Markdownify Phobos
...
$(D word) -> `word`
2018-04-02 22:32:47 +02:00
Jack Stouffer
4ce5d44dbb
Use underscores for number literals with five or more digits
2017-02-23 09:45:49 -05:00
Sebastian Wilzbach
425ab667a3
Automatically set the range style from a..b -> a .. b
...
Commands:
sed -E "s/([[:alnum:]])[.][.]([[:alnum:]])/\1 .. \2/g" -i **/*.d
sed -E "s/([[:alnum:]])[.][.] ([[:alnum:]])/\1 .. \2/g" -i **/*.d
sed -E "s/([[:alnum:]]) [.][.]([[:alnum:]])/\1 .. \2/g" -i **/*.d
2017-02-22 05:37:31 +01:00
Jack Stouffer
0cb88c508d
Mark the internal unicode code as package
2016-09-15 08:42:57 +01:00
Sebastian Wilzbach
ec47ac4224
Remove the WEB macro in favor of HTTP
...
replacement: sed 's/\$(WEB/\$(HTTP/g' -i **/*.d
2016-06-16 00:14:51 +02:00
Sebastian Wilzbach
1d34a121e9
apply all-man braces in Phobos
...
// find common cases
sed -E "s/^(\s*)((if|static if|for|foreach|foreach_reverse|while|unittest|switch|else|version).*)\s*\{$/\1\2\n\1{/" -i **/*.d
// catch else-if
sed -E "s/^(\s*)} (else static if| if|else if|else)(.*)\s*\{$/\1}\n\1\2\3\n\1{/" -i **/*.d
// remove created trailing whitespace
sed -i 's/[ \t]*$//' **/*.d
2016-05-31 13:07:53 +02:00
Jack Stouffer
8cd97964a7
Fixed long lines in std/internal/unicode_tables.d
2016-05-10 20:51:39 -04:00
Sebastian Wilzbach
3d67cd228c
style fix: space between operators
2016-04-26 22:26:20 +03:00
Walter Bright
dc302d26a4
DIP25: make phobos work with it
2015-01-30 12:02:48 -08:00
sinkuu
deb82feaa2
Add @nogc
attribute
2014-11-09 23:00:24 +09:00
Robert burner Schadek
f2c5dbd502
some love for std.string
...
many functions of std.string had no attributes like pure, safe etc.
additionally, many const arguments where not marked as const.
tabs -> whitespace
removed tail whitespace
Doc Examples to unittest docs
more love for std.string
const to in
squeeze
2014-07-17 09:48:56 +02:00
Dmitry Olshansky
c131da5834
Fix issue 12455 [reg]Bad lowercase mapping for 'LATIN CAPITAL LETTER I WITH DOT ABOVE'
...
Also as part of a fix restores a test case in string.d
to exactly match older behaviour.
Some extended greek is not upper but title case, yet changes on toUpper.
2014-07-05 02:05:12 +04:00
Dmitry Olshansky
08148b5901
purify std.uni constructs, blocked by std.algortihm.sort
2014-04-13 14:36:21 +04:00
Andrei Alexandrescu
e289a7cdd7
Revert "Merge pull request #1685 from blackwhale/utf8-matcher"
...
This reverts commit 216ca01ca8
, reversing
changes made to d56c1dbc08
.
2014-03-15 17:11:17 -07:00
Dmitry Olshansky
c264bd6a51
purify std.uni constructs, blocked by std.algortihm.sort
2014-03-08 13:55:33 +04:00
Dmitry Olshansky
87bff6186c
split off rarely used unicode tables
...
This avoids parsing large files reducing parse time by 30 ms for me
(it took ~70ms to parse tables, now ~40ms).
And move hangul sets to Trie tables as well.
Also saves around 30Kb on "hello world" app.
2013-10-17 18:49:11 +04:00
Martin Nowak
5cecc7622d
smaller executables
...
- Move all tables into functions or structs so that
dmd's multilib will put them into separate archive
objects. This allows the linker to only pick the
tables that are actually used.
2013-10-16 09:03:53 +02:00
Martin Nowak
26edfc624f
deduplicate CodepointTries and leave the data in libphobos2.a
...
- Store the static immutable CodepointTries in separate functions.
2013-10-14 00:38:30 +02:00
Martin Nowak
f9e7a93d93
store other immutable tables in unicode_tables
...
- This is mainly for consistency with other tables.
2013-10-13 22:54:16 +02:00
Martin Nowak
45c873faf3
make case tables immutable
...
- Avoids redundant object copies and semantic
analysis for every usage.
- Multilib archives or gc-sections will take care
of the binary size issue.
2013-10-13 20:50:40 +02:00
Dmitry Olshansky
5ce8a6d538
tweak unicode_tables.d and related code to avoid CTFE in generated tables
2013-10-13 12:28:34 +04:00
Dmitry Olshansky
9df179b65d
fix issue 11057 [REG2.064dev] New std.uni has icmp() partly broken
2013-09-22 12:00:04 +04:00
Dmitry Olshansky
256b62b370
fix issue 11089 toUpper doesn't work with 1:m mappings
...
Also fixes a typo in generic toCase, adds test cases for
previously fixed issue 9629
2013-09-22 11:52:27 +04:00
Dmitry Olshansky
9a053d97c2
new std.uni module
2013-07-20 23:00:34 +04:00