[ruby-core:62833] [ruby-trunk - Bug #9875] [Open] ERB#result documentation incorrect

From: mlorenz@...
Date: 2014-05-29 04:27:52 UTC
List: ruby-core #62833
Issue #9875 has been reported by Mark Lorenz.

----------------------------------------
Bug #9875: ERB#result documentation incorrect
https://bugs.ruby-lang.org/issues/9875

* Author: Mark Lorenz
* Status: Open
* Priority: Normal
* Assignee: Eric Hodel
* Category: doc
* Target version: 
* ruby -v: 2.1.1p76 and 1.9.3p484 verified
* Backport: 2.0.0: UNKNOWN, 2.1: UNKNOWN
----------------------------------------
This issue duplicates: https://github.com/ruby/ruby/pull/619

---
ERB#result does not accept a proc, the documentation says:

> Executes the generated ERB code to produce a completed template, returning the results of that code. 
> (See ::new for details on how this process can be affected by safe_level.)
> b accepts a Binding object which is used to set the context of code evaluation.

However, #result delegates to Kernel.eval, which says:

> Evaluates the Ruby expression(s) in string. If binding is given, which
> must be a Binding object...

When given a proc, #eval errors with:

> ruby-2.1.1/lib/ruby/2.1.0/erb.rb:847:in `eval': wrong argument type proc (expected binding) (TypeError)

I verified on 2.1.1 and 1.9.3p484

Patch included. 

---Files--------------------------------
0001-ERB-result-does-not-accept-a-proc.patch (2.27 KB)


-- 
https://bugs.ruby-lang.org/

In This Thread

Prev Next