Ruby v1.6 Class and Library Reference: Method

class Method |
Parent: | Object
Version: | 1.6

### Index:

[ ] arity call to_proc

Method objects are created by `Object#method`, and are associated with a particular object (not just with a class). They may be used to invoke the method within the object, and as a block associated with an iterator.

`class Thing`
`def square(n)`
`n*n`
`end`
`end`
`aThing = Thing.new`
`aMethod = aThing.method("square")`
``
`aMethod.call(9)` | -> | `81`
`[ 1, 2, 3 ].collect(&aMethod)` | -> | `[1, 4, 9]`

instance methods
[ ] | meth[ [args]* ] -> anObject
|  | Synonym for `Method.call`.
arity | meth.arity -> aFixnum
|  | Returns an indication of the number of arguments accepted by a method. Returns a nonnegative integer for methods that take a fixed number of arguments. For Ruby methods that take a variable number of arguments, returns -n-1, where n is the number of required arguments. For methods written in C, returns -1 if the call takes a variable number of arguments.
call | meth.call( [args]* ) -> anObject
|  | Invokes the meth with the specified arguments, returning the method's return value.
`m = 12.method("+")`
`m.call(3)` | -> | `15`
`m.call(20)` | -> | `32`
to_proc | meth.to_proc -> aProc
|  | Returns a `Proc` object corresponding to this method.

Extracted from the book "Programming Ruby - The Pragmatic Programmer's Guide"
Copyright © 2000 Addison Wesley Longman, Inc. Released under the terms of the Open Publication License V1.0.
This reference is available for download.