aboutsummaryrefslogtreecommitdiff
path: root/src/test
diff options
context:
space:
mode:
authorGraydon Hoare <[email protected]>2010-09-20 23:56:43 -0700
committerGraydon Hoare <[email protected]>2010-09-20 23:56:43 -0700
commitc5f4789d5b75d3098665b17d318144cb7c54f42a (patch)
tree2d0ef3ef0e85aa7f2453d8bae762c89552a99ed9 /src/test
parentWrap long lines. (diff)
downloadrust-c5f4789d5b75d3098665b17d318144cb7c54f42a.tar.xz
rust-c5f4789d5b75d3098665b17d318144cb7c54f42a.zip
Bind pattern slots with ?, drop parens from 0-ary tag constructors, translate 0-ary constructors as constants. Rustc loses ~300kb.
Diffstat (limited to 'src/test')
-rw-r--r--src/test/compile-fail/infinite-tag-type-recursion.rs4
-rw-r--r--src/test/run-pass/alt-pattern-drop.rs4
-rw-r--r--src/test/run-pass/alt-pattern-simple.rs2
-rw-r--r--src/test/run-pass/alt-tag.rs6
-rw-r--r--src/test/run-pass/generic-tag-alt.rs2
-rw-r--r--src/test/run-pass/generic-tag-values.rs4
-rw-r--r--src/test/run-pass/generic-tag.rs4
-rw-r--r--src/test/run-pass/lib-deque.rs26
-rw-r--r--src/test/run-pass/list.rs4
-rw-r--r--src/test/run-pass/mutual-recursion-group.rs10
-rw-r--r--src/test/run-pass/size-and-align.rs8
-rw-r--r--src/test/run-pass/tag.rs4
12 files changed, 40 insertions, 38 deletions
diff --git a/src/test/compile-fail/infinite-tag-type-recursion.rs b/src/test/compile-fail/infinite-tag-type-recursion.rs
index a3d5d62d..17f8f594 100644
--- a/src/test/compile-fail/infinite-tag-type-recursion.rs
+++ b/src/test/compile-fail/infinite-tag-type-recursion.rs
@@ -4,9 +4,9 @@
tag mlist {
cons(int, mlist);
- nil();
+ nil;
}
fn main() {
- auto a = cons(10, cons(11, nil()));
+ auto a = cons(10, cons(11, nil));
}
diff --git a/src/test/run-pass/alt-pattern-drop.rs b/src/test/run-pass/alt-pattern-drop.rs
index 66b9ac8e..1c9cc000 100644
--- a/src/test/run-pass/alt-pattern-drop.rs
+++ b/src/test/run-pass/alt-pattern-drop.rs
@@ -5,14 +5,14 @@ import std._str;
tag t {
make_t(str);
- clam();
+ clam;
}
fn foo(str s) {
let t x = make_t(s); // ref up
alt (x) {
- case (make_t(y)) { log y; } // ref up then down
+ case (make_t(?y)) { log y; } // ref up then down
case (_) { log "?"; fail; }
}
diff --git a/src/test/run-pass/alt-pattern-simple.rs b/src/test/run-pass/alt-pattern-simple.rs
index d0a4159e..10891ceb 100644
--- a/src/test/run-pass/alt-pattern-simple.rs
+++ b/src/test/run-pass/alt-pattern-simple.rs
@@ -1,6 +1,6 @@
fn altsimple(int f) {
alt (f) {
- case (x) {}
+ case (?x) {}
}
}
diff --git a/src/test/run-pass/alt-tag.rs b/src/test/run-pass/alt-tag.rs
index be331265..68013dfe 100644
--- a/src/test/run-pass/alt-tag.rs
+++ b/src/test/run-pass/alt-tag.rs
@@ -9,17 +9,17 @@ tag color {
fn process(color c) -> int {
let int x;
alt (c) {
- case (rgb(r, _, _)) {
+ case (rgb(?r, _, _)) {
log "rgb";
log r;
x = r;
}
- case (rgba(_, _, _, a)) {
+ case (rgba(_, _, _, ?a)) {
log "rgba";
log a;
x = a;
}
- case (hsl(_, s, _)) {
+ case (hsl(_, ?s, _)) {
log "hsl";
log s;
x = s;
diff --git a/src/test/run-pass/generic-tag-alt.rs b/src/test/run-pass/generic-tag-alt.rs
index 0442d490..4f04e729 100644
--- a/src/test/run-pass/generic-tag-alt.rs
+++ b/src/test/run-pass/generic-tag-alt.rs
@@ -5,7 +5,7 @@ tag foo[T] {
fn altfoo[T](foo[T] f) {
auto hit = false;
alt (f) {
- case (arm[T](x)) {
+ case (arm[T](?x)) {
log "in arm";
hit = true;
}
diff --git a/src/test/run-pass/generic-tag-values.rs b/src/test/run-pass/generic-tag-values.rs
index 9691c964..090a0504 100644
--- a/src/test/run-pass/generic-tag-values.rs
+++ b/src/test/run-pass/generic-tag-values.rs
@@ -7,7 +7,7 @@ tag noption[T] {
fn main() {
let noption[int] nop = some[int](5);
alt (nop) {
- case (some[int](n)) {
+ case (some[int](?n)) {
log n;
check (n == 5);
}
@@ -15,7 +15,7 @@ fn main() {
let noption[tup(int, int)] nop2 = some[tup(int, int)](tup(17, 42));
alt (nop2) {
- case (some[tup(int, int)](t)) {
+ case (some[tup(int, int)](?t)) {
log t._0;
log t._1;
check (t._0 == 17);
diff --git a/src/test/run-pass/generic-tag.rs b/src/test/run-pass/generic-tag.rs
index 770e13e7..1fd88255 100644
--- a/src/test/run-pass/generic-tag.rs
+++ b/src/test/run-pass/generic-tag.rs
@@ -1,9 +1,9 @@
tag option[T] {
some(@T);
- none();
+ none;
}
fn main() {
let option[int] a = some[int](@10);
- a = none[int]();
+ a = none[int];
} \ No newline at end of file
diff --git a/src/test/run-pass/lib-deque.rs b/src/test/run-pass/lib-deque.rs
index 341811f3..4ba772f0 100644
--- a/src/test/run-pass/lib-deque.rs
+++ b/src/test/run-pass/lib-deque.rs
@@ -151,21 +151,23 @@ fn main() {
fn taggyeq(taggy a, taggy b) -> bool {
alt (a) {
- case (one(a1)) {
+ case (one(?a1)) {
alt (b) {
- case (one(b1)) { ret a1 == b1; }
+ case (one(?b1)) { ret a1 == b1; }
case (_) { ret false; }
}
}
- case (two(a1, a2)) {
+ case (two(?a1, ?a2)) {
alt (b) {
- case (two(b1, b2)) { ret (a1 == b1 && a2 == b2); }
+ case (two(?b1, ?b2)) { ret (a1 == b1 && a2 == b2); }
case (_) { ret false; }
}
}
- case (three(a1, a2, a3)) {
+ case (three(?a1, ?a2, ?a3)) {
alt (b) {
- case (three(b1, b2, b3)) { ret (a1 == b1 && a2 == b2 && a3 == b3); }
+ case (three(?b1, ?b2, ?b3)) {
+ ret (a1 == b1 && a2 == b2 && a3 == b3);
+ }
case (_) { ret false; }
}
}
@@ -174,21 +176,21 @@ fn main() {
fn taggypareq[T](taggypar[T] a, taggypar[T] b) -> bool {
alt (a) {
- case (onepar[T](a1)) {
+ case (onepar[T](?a1)) {
alt (b) {
- case (onepar[T](b1)) { ret a1 == b1; }
+ case (onepar[T](?b1)) { ret a1 == b1; }
case (_) { ret false; }
}
}
- case (twopar[T](a1, a2)) {
+ case (twopar[T](?a1, ?a2)) {
alt (b) {
- case (twopar[T](b1, b2)) { ret (a1 == b1 && a2 == b2); }
+ case (twopar[T](?b1, ?b2)) { ret (a1 == b1 && a2 == b2); }
case (_) { ret false; }
}
}
- case (threepar[T](a1, a2, a3)) {
+ case (threepar[T](?a1, ?a2, ?a3)) {
alt (b) {
- case (threepar[T](b1, b2, b3)) {
+ case (threepar[T](?b1, ?b2, ?b3)) {
ret (a1 == b1 && a2 == b2 && a3 == b3);
}
case (_) { ret false; }
diff --git a/src/test/run-pass/list.rs b/src/test/run-pass/list.rs
index 5ea2bc2e..2fd94598 100644
--- a/src/test/run-pass/list.rs
+++ b/src/test/run-pass/list.rs
@@ -2,9 +2,9 @@
tag list {
cons(int,@list);
- nil();
+ nil;
}
fn main() {
- cons(10, @cons(11, @cons(12, @nil())));
+ cons(10, @cons(11, @cons(12, @nil)));
}
diff --git a/src/test/run-pass/mutual-recursion-group.rs b/src/test/run-pass/mutual-recursion-group.rs
index 2e36df70..4d851052 100644
--- a/src/test/run-pass/mutual-recursion-group.rs
+++ b/src/test/run-pass/mutual-recursion-group.rs
@@ -1,9 +1,9 @@
// -*- rust -*-
tag colour {
- red();
- green();
- blue();
+ red;
+ green;
+ blue;
}
tag tree {
@@ -13,12 +13,12 @@ tag tree {
tag list {
cons(@tree, @list);
- nil();
+ nil;
}
tag small_list {
kons(int,@small_list);
- neel();
+ neel;
}
fn main() {
diff --git a/src/test/run-pass/size-and-align.rs b/src/test/run-pass/size-and-align.rs
index 19af75ed..58d529e8 100644
--- a/src/test/run-pass/size-and-align.rs
+++ b/src/test/run-pass/size-and-align.rs
@@ -2,17 +2,17 @@
tag clam[T] {
a(T, int);
- b();
+ b;
}
fn uhoh[T](vec[clam[T]] v) {
alt (v.(1)) {
- case (a[T](t, u)) { log "incorrect"; log u; fail; }
- case (b[T]()) { log "correct"; }
+ case (a[T](?t, ?u)) { log "incorrect"; log u; fail; }
+ case (b[T]) { log "correct"; }
}
}
fn main() {
- let vec[clam[int]] v = vec(b[int](), b[int](), a[int](42, 17));
+ let vec[clam[int]] v = vec(b[int], b[int], a[int](42, 17));
uhoh[int](v);
}
diff --git a/src/test/run-pass/tag.rs b/src/test/run-pass/tag.rs
index 80012fd7..e3f89a7f 100644
--- a/src/test/run-pass/tag.rs
+++ b/src/test/run-pass/tag.rs
@@ -2,12 +2,12 @@
tag colour {
red(int,int);
- green();
+ green;
}
fn f() {
auto x = red(1,2);
- auto y = green();
+ auto y = green;
// FIXME: needs structural equality test working.
// check (x != y);
}