Navigation Menu

Skip to content

Commit

Permalink
book: 'x' is already taken, so use something else
Browse files Browse the repository at this point in the history
  • Loading branch information
tshepang committed Apr 10, 2015
1 parent c897ac0 commit 386a144
Showing 1 changed file with 4 additions and 4 deletions.
8 changes: 4 additions & 4 deletions src/doc/trpl/method-syntax.md
Expand Up @@ -4,15 +4,15 @@ Functions are great, but if you want to call a bunch of them on some data, it
can be awkward. Consider this code:

```{rust,ignore}
baz(bar(foo(x)));
baz(bar(foo)));
```

We would read this left-to right, and so we see "baz bar foo." But this isn't the
order that the functions would get called in, that's inside-out: "foo bar baz."
Wouldn't it be nice if we could do this instead?

```{rust,ignore}
x.foo().bar().baz();
foo.bar().baz();
```

Luckily, as you may have guessed with the leading question, you can! Rust provides
Expand Down Expand Up @@ -47,8 +47,8 @@ This will print `12.566371`.
We've made a struct that represents a circle. We then write an `impl` block,
and inside it, define a method, `area`. Methods take a special first
parameter, of which there are three variants: `self`, `&self`, and `&mut self`.
You can think of this first parameter as being the `x` in `x.foo()`. The three
variants correspond to the three kinds of thing `x` could be: `self` if it's
You can think of this first parameter as being the `foo` in `foo.bar()`. The three
variants correspond to the three kinds of things `foo` could be: `self` if it's
just a value on the stack, `&self` if it's a reference, and `&mut self` if it's
a mutable reference. We should default to using `&self`, as you should prefer
borrowing over taking ownership, as well as taking immutable references
Expand Down

0 comments on commit 386a144

Please sign in to comment.