summaryrefslogtreecommitdiff
path: root/doc/syntax
diff options
context:
space:
mode:
authordrbrain <drbrain@b2dd03c8-39d4-4d8f-98ff-823fe69b080e>2012-12-17 03:05:45 +0000
committerdrbrain <drbrain@b2dd03c8-39d4-4d8f-98ff-823fe69b080e>2012-12-17 03:05:45 +0000
commit73b244d0ded191337ed6b30eb7ead658b614ae8b (patch)
tree9b5ede00d8ae863d916d7324fa706caca0671885 /doc/syntax
parent85d3d572fad648cd4f7ae2f57bb62ea0ab6cc384 (diff)
* doc/syntax/methods.rdoc: Added a description of singleton methods.
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@38421 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
Diffstat (limited to 'doc/syntax')
-rw-r--r--doc/syntax/methods.rdoc21
1 files changed, 21 insertions, 0 deletions
diff --git a/doc/syntax/methods.rdoc b/doc/syntax/methods.rdoc
index c207649..88a4378 100644
--- a/doc/syntax/methods.rdoc
+++ b/doc/syntax/methods.rdoc
@@ -11,6 +11,27 @@ A method definition consists of the +def+ keyword, a method name, the body of
the method, then the +end+ keyword. When called the method will execute the
body of the method. This method returns <tt>2</tt>.
+A method may be defined on another object. You may define a "class
+method" (a method that is called on the class, not an instance of the class)
+like this:
+
+ class C
+ def self.my_method
+ # ...
+ end
+ end
+
+You may also define methods this way on any object:
+
+ string = "my string"
+ def string.my_method
+ # ...
+ end
+
+This is called a "singleton method". +my_method+ will only exist on this
+string instance. Other strings will not have +my_method+. You may also
+override existing methods on just one object this way.
+
== Arguments
A method may accept arguments. The argument list follows the method name: