summaryrefslogtreecommitdiff
path: root/vm_eval.c
diff options
context:
space:
mode:
Diffstat (limited to 'vm_eval.c')
-rw-r--r--vm_eval.c13
1 files changed, 10 insertions, 3 deletions
diff --git a/vm_eval.c b/vm_eval.c
index 296af8cfe7..53025a489c 100644
--- a/vm_eval.c
+++ b/vm_eval.c
@@ -862,13 +862,17 @@ send_internal(int argc, const VALUE *argv, VALUE recv, call_type scope)
}
/*
- * call-seq:
- * foo.send(symbol [, args...]) -> obj
- * foo.__send__(symbol [, args...]) -> obj
+ * call-seq:
+ * foo.send(symbol [, args...]) -> obj
+ * foo.__send__(symbol [, args...]) -> obj
+ * foo.send(string [, args...]) -> obj
+ * foo.__send__(string [, args...]) -> obj
*
* Invokes the method identified by _symbol_, passing it any
* arguments specified. You can use <code>__send__</code> if the name
* +send+ clashes with an existing method in _obj_.
+ * When the method is identified by a string, the string is converted
+ * to a symbol.
*
* class Klass
* def hello(*args)
@@ -888,10 +892,13 @@ rb_f_send(int argc, VALUE *argv, VALUE recv)
/*
* call-seq:
* obj.public_send(symbol [, args...]) -> obj
+ * obj.public_send(string [, args...]) -> obj
*
* Invokes the method identified by _symbol_, passing it any
* arguments specified. Unlike send, public_send calls public
* methods only.
+ * When the method is identified by a string, the string is converted
+ * to a symbol.
*
* 1.public_send(:puts, "hello") # causes NoMethodError
*/