/src/test/run-pass/resource-generic.rs

http://github.com/jruderman/rust · Rust · 15 lines · 13 code · 2 blank · 0 comment · 1 complexity · 958742abe41d6ffd31e13f4c2c799c09 MD5 · raw file

  1. class finish<T: copy> {
  2. let arg: {val: T, fin: extern fn(T)};
  3. new(arg: {val: T, fin: extern fn(T)}) {
  4. self.arg = arg;
  5. }
  6. drop { self.arg.fin(self.arg.val); }
  7. }
  8. fn main() {
  9. let box = @mut 10;
  10. fn dec_box(&&i: @mut int) { *i -= 1; }
  11. { let _i <- finish({val: box, fin: dec_box}); }
  12. assert (*box == 9);
  13. }