summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--ChangeLog7
-rw-r--r--doc/syntax/assignment.rdoc6
2 files changed, 12 insertions, 1 deletions
diff --git a/ChangeLog b/ChangeLog
index ad7a3b2044..8b3a59f57b 100644
--- a/ChangeLog
+++ b/ChangeLog
@@ -1,3 +1,10 @@
+Wed Jan 23 10:34:47 2013 Eric Hodel <drbrain@segment7.net>
+
+ * doc/syntax/assignment.rdoc (Local Variables and Methods): Fixed
+ example showing caching of a method's results into a local variable.
+ Added not about using an explicit receiver to call a method that
+ matches a local variable. Suggested by markov_twain on twitter.
+
Wed Jan 23 10:20:08 2013 Eric Hodel <drbrain@segment7.net>
* lib/README: Fixed typo. Patch by Pradeep Sahoo.
diff --git a/doc/syntax/assignment.rdoc b/doc/syntax/assignment.rdoc
index c371593fbe..7e586225b9 100644
--- a/doc/syntax/assignment.rdoc
+++ b/doc/syntax/assignment.rdoc
@@ -86,11 +86,15 @@ code, for example:
42 # pretend this takes a long time
end
- big_calculation = big_calculation
+ big_calculation = big_calculation()
Now any reference to +big_calculation+ is considered a local variable and will
be cached. To call the method, use <code>self.big_calculation</code>.
+You can force a method call by using empty argument parentheses as shown above
+or by using an explicit receiver like <code>self.</code>. Using an explicit
+receiver may raise a NameError if the method's visibility is not public.
+
Another commonly confusing case is when using a modifier +if+:
p a if a = 0.zero?