granite-rust/src/test/run-pass/obj-self-3.rs
2011-05-14 21:05:22 -04:00

28 lines
389 B
Rust

fn main() {
obj foo() {
fn m1(int i) -> int {
i += 1;
ret i;
}
fn m2(int i) -> int {
ret self.m1(i);
}
fn m3(int i) -> int {
i += 1;
ret self.m1(i);
}
}
auto a = foo();
let int i = 0;
i = a.m1(i);
assert (i == 1);
i = a.m2(i);
assert (i == 2);
i = a.m3(i);
assert (i == 4);
}