From e615f0ec428777b29846da515763fe6ccbac9f13 Mon Sep 17 00:00:00 2001 From: akr Date: Sun, 23 Dec 2007 15:36:00 +0000 Subject: [PATCH] Proc#lambda? documented. git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@14527 b2dd03c8-39d4-4d8f-98ff-823fe69b080e --- proc.c | 24 ++++++++++++++++++++++++ 1 file changed, 24 insertions(+) diff --git a/proc.c b/proc.c index a3dcc0c970..a994c3157b 100644 --- a/proc.c +++ b/proc.c @@ -107,6 +107,30 @@ proc_clone(VALUE self) return procval; } +/* + * call-seq: + * prc.lambda? => true or false + * + * Returns true for a Proc object which argument check is rigid. + * Such procs are typically generated by lambda. + * + * lambda {}.lambda? => true + * + * proc {}.lambda? => false + * Proc.new {}.lambda? => false + * + * def m() end + * method(:m).to_proc.lambda? => true + * + * def n(&b) b.lambda? end + * n {} => false + * n(&lambda {}) => true + * n(&method(:m)) => true + * n(&proc {}) => false + * n(&Proc.new {}) => false + * + */ + static VALUE proc_lambda_p(VALUE procval) {