| struct Foo { |
| x: i32, |
| } |
| |
| impl Foo { |
| fn this1(&self) -> i32 { |
| let this = self; |
| let a = 1; |
| this.x |
| } |
| |
| fn this2(&self) -> i32 { |
| let a = Foo { |
| x: 2 |
| }; |
| let this = a; |
| this.x |
| } |
| |
| fn foo(&self) -> i32 { |
| this.x |
| //~^ ERROR cannot find value `this` in this scope |
| } |
| |
| fn bar(&self) -> i32 { |
| this.foo() |
| //~^ ERROR cannot find value `this` in this scope |
| } |
| |
| fn baz(&self) -> i32 { |
| my.bar() |
| //~^ ERROR cannot find value `my` in this scope |
| } |
| } |
| |
| fn main() { |
| let this = vec![1, 2, 3]; |
| let my = vec![1, 2, 3]; |
| let len = this.len(); |
| let len = my.len(); |
| } |