% Method Syntax There is a new edition of the book and this is an old link. > Methods are different from functions in that they’re defined within the context of a struct, and their first parameter is always `self`, which represents the instance of the struct the method is being called on. ```rust # struct Rectangle { # width: u32, # height: u32, # } impl Rectangle { fn area(&self) -> u32 { self.width * self.height } } ``` --- Here are the relevant sections in the new and old books: * **[in the current edition: Ch 5.03 — Method Syntax][2]** * [In the first edition: Ch 3.16 — Method Syntax][1] [1]: https://doc.rust-lang.org/1.30.0/book/first-edition/method-syntax.html [2]: ch05-03-method-syntax.html