From 22ef08293e69a5bec54874c30ec7652e7d917da0 Mon Sep 17 00:00:00 2001 From: Patrick Walton Date: Tue, 24 Jul 2012 16:39:26 -0700 Subject: [PATCH] test: Add a max/min classes test case --- src/test/run-pass/max-min-classes.rs | 30 ++++++++++++++++++++++++++++ 1 file changed, 30 insertions(+) create mode 100644 src/test/run-pass/max-min-classes.rs diff --git a/src/test/run-pass/max-min-classes.rs b/src/test/run-pass/max-min-classes.rs new file mode 100644 index 000000000000..61e4bc047f49 --- /dev/null +++ b/src/test/run-pass/max-min-classes.rs @@ -0,0 +1,30 @@ +trait Product { + fn product() -> int; +} + +struct Foo { + x: int; + y: int; +} + +impl Foo { + fn sum() -> int { + self.x + self.y + } +} + +impl Foo : Product { + fn product() -> int { + self.x * self.y + } +} + +fn Foo(x: int, y: int) -> Foo { + Foo { x: x, y: y } +} + +fn main() { + let foo = Foo(3, 20); + io::println(#fmt("%d %d", foo.sum(), foo.product())); +} +