Method Invocations
A method invocation expression has four parts:
An arbitrary expression whose value is the object on which the method is invoked. This expression is followed by
.or::to separate it from the method name that follows. The expression and separator are optional; if omitted, the method is invoked onself.The name of the method being invoked. This is the only required piece of a method invocation expression.
The argument values being passed to the method. The list of arguments may be enclosed in parentheses, but these are usually optional. (Optional and required parentheses are discussed in detail in Methods and Parentheses.) If there is more than one argument, they are separated from each other with commas. The number and type of arguments required depend on the method definition. Some methods expect no arguments.
An optional block of code delimited by curly braces or by a
do/endpair. The method may invoke this code using theyieldkeyword. This ability to associate arbitrary code with any method invocation is the basis for Ruby’s powerful iterator methods. We’ll learn much more about blocks associated with method invocations in Iterators and Enumerable Objects and Blocks.
A method name is usually separated from the object on which it is
invoked with a .. :: is also allowed, but it is rarely used
because it can make method invocations look more like constant reference
expressions.
When the Ruby interpreter has the name of a method and an object on which it is to be invoked, ...
Become an O’Reilly member and get unlimited access to this title plus top books and audiobooks from O’Reilly and nearly 200 top publishers, thousands of courses curated by job role, 150+ live events each month,
and much more.
Read now
Unlock full access