Skip to content

Commit f9ca548

Browse files
committed
---
yaml --- r: 139970 b: refs/heads/try2 c: 4ff701b h: refs/heads/master v: v3
1 parent e58c505 commit f9ca548

File tree

6 files changed

+2669
-4585
lines changed

6 files changed

+2669
-4585
lines changed

[refs]

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -5,7 +5,7 @@ refs/heads/snap-stage3: 78a7676898d9f80ab540c6df5d4c9ce35bb50463
55
refs/heads/try: 519addf6277dbafccbb4159db4b710c37eaa2ec5
66
refs/tags/release-0.1: 1f5c5126e96c79d22cb7862f75304136e204f105
77
refs/heads/ndm: f3868061cd7988080c30d6d5bf352a5a5fe2460b
8-
refs/heads/try2: cd982ad3f74673c55af6034a4f757e60be9b381c
8+
refs/heads/try2: 4ff701b7db609cabe59832d47779832a16627b5f
99
refs/heads/dist-snap: ba4081a5a8573875fed17545846f6f6902c8ba8d
1010
refs/tags/release-0.2: c870d2dffb391e14efb05aa27898f1f6333a9596
1111
refs/tags/release-0.3: b5f0d0f648d9a6153664837026ba1be43d3e2503

branches/try2/doc/tutorial.md

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1670,7 +1670,7 @@ do spawn {
16701670
~~~~
16711671

16721672
If you want to see the output of `debug!` statements, you will need to turn on `debug!` logging.
1673-
To enable `debug!` logging, set the RUST_LOG environment variable to `debug` (e.g., with bash, `export RUST_LOG=debug`)
1673+
To enable `debug!` logging, set the RUST_LOG environment variable to the name of your crate, which, for a file named `foo.rs`, will be `foo` (e.g., with bash, `export RUST_LOG=foo`).
16741674

16751675
## For loops
16761676

branches/try2/src/etc/unicode.py

Lines changed: 44 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -112,7 +112,49 @@ def escape_char(c):
112112
return "'\\u%4.4x'" % c
113113
return "'\\U%8.8x'" % c
114114

115+
def ch_prefix(ix):
116+
if ix == 0:
117+
return " "
118+
if ix % 2 == 0:
119+
return ",\n "
120+
else:
121+
return ", "
122+
123+
def emit_bsearch_range_table(f):
124+
f.write("""
125+
pure fn bsearch_range_table(c: char, r: &[(char,char)]) -> bool {
126+
use cmp::{EQ, LT, GT};
127+
use vec::bsearch;
128+
use option::None;
129+
(do bsearch(r) |&(lo,hi)| {
130+
if lo <= c && c <= hi { EQ }
131+
else if hi < c { LT }
132+
else { GT }
133+
}) != None
134+
}\n\n
135+
""");
136+
115137
def emit_property_module(f, mod, tbl):
138+
f.write("pub mod %s {\n" % mod)
139+
keys = tbl.keys()
140+
keys.sort()
141+
emit_bsearch_range_table(f);
142+
for cat in keys:
143+
f.write(" const %s_table : &[(char,char)] = &[\n" % cat)
144+
ix = 0
145+
for pair in tbl[cat]:
146+
f.write(ch_prefix(ix))
147+
f.write("(%s, %s)" % (escape_char(pair[0]), escape_char(pair[1])))
148+
ix += 1
149+
f.write("\n ];\n\n")
150+
151+
f.write(" pub pure fn %s(c: char) -> bool {\n" % cat)
152+
f.write(" bsearch_range_table(c, %s_table)\n" % cat)
153+
f.write(" }\n\n")
154+
f.write("}\n")
155+
156+
157+
def emit_property_module_old(f, mod, tbl):
116158
f.write("mod %s {\n" % mod)
117159
keys = tbl.keys()
118160
keys.sort()
@@ -193,8 +235,9 @@ def emit_decomp_module(f, canon, compat):
193235
rf = open(r, "w")
194236

195237
(canon_decomp, compat_decomp, gencats) = load_unicode_data("UnicodeData.txt")
196-
emit_decomp_module(rf, canon_decomp, compat_decomp)
197238
emit_property_module(rf, "general_category", gencats)
198239

240+
#emit_decomp_module(rf, canon_decomp, compat_decomp)
241+
199242
derived = load_derived_core_properties("DerivedCoreProperties.txt")
200243
emit_property_module(rf, "derived_property", derived)

0 commit comments

Comments
 (0)