1 // Copyright 2012 The Rust Project Developers. See the COPYRIGHT
2 // file at the top-level directory of this distribution and at
3 // http://rust-lang.org/COPYRIGHT.
5 // Licensed under the Apache License, Version 2.0 <LICENSE-APACHE or
6 // http://www.apache.org/licenses/LICENSE-2.0> or the MIT license
7 // <LICENSE-MIT or http://opensource.org/licenses/MIT>, at your
8 // option. This file may not be copied, modified, or distributed
9 // except according to those terms.
13 #![allow(non_snake_case)]
18 fn SetX(&mut self, _
: S
);
22 trait Movable
<S
: Add
<Output
=S
>>: Positioned
<S
> {
23 fn translate(&mut self, dx
: S
) {
24 let x
= self.X() + dx
;
29 struct Point { x: isize, y: isize }
31 impl Positioned
<isize> for Point
{
32 fn SetX(&mut self, x
: isize) {
35 fn X(&self) -> isize {
40 impl Movable
<isize> for Point {}
43 let mut p
= Point{ x: 1, y: 2}
;