https://bugs.ruby-lang.org/https://bugs.ruby-lang.org/favicon.ico?17113305112011-09-24T14:41:06ZRuby Issue Tracking SystemRuby master - Feature #5360: BasicObject#bindinghttps://bugs.ruby-lang.org/issues/5360?journal_id=209682011-09-24T14:41:06Znobu (Nobuyoshi Nakada)nobu@ruby-lang.org
<ul><li><strong>Status</strong> changed from <i>Open</i> to <i>Feedback</i></li></ul><p>Can you elaborate?</p> Ruby master - Feature #5360: BasicObject#bindinghttps://bugs.ruby-lang.org/issues/5360?journal_id=209712011-09-25T02:01:32Ztrans (Thomas Sawyer)
<ul></ul><p>Sure. I think the most obvious usecase is with ERB. If I want to strictly control the available interface to an ERB template a subclass of BasicObject is an ideal way to do. But ERB's result method takes a binding. So that's one specific case I've come across, and I am certain there are others given that both BasicObject and binding are very useful devices in the context of meta-programming.</p> Ruby master - Feature #5360: BasicObject#bindinghttps://bugs.ruby-lang.org/issues/5360?journal_id=210352011-09-28T04:51:54Zkernigh (George Koehler)xkernigh@netscape.net
<ul></ul><p>I can get a Binding from a BasicObject like so:</p>
<p>class Cow < BasicObject<br>
Moo = "Moooo!"<br>
def binding<br>
::Kernel.binding<br>
end<br>
end</p>
<p>b = Cow.new.binding<br>
p eval("Moo", b) # => "Moooo!"<br>
p eval("String", b) # raises NameError</p>
<p>This uses the syntax "::Kernel" to access a global constant.</p> Ruby master - Feature #5360: BasicObject#bindinghttps://bugs.ruby-lang.org/issues/5360?journal_id=210442011-09-28T11:23:06Ztrans (Thomas Sawyer)
<ul></ul><p>On Sep 27, 3:51Â pm, George Koehler <a href="mailto:xkern...@netscape.net" class="email">xkern...@netscape.net</a> wrote:</p>
<blockquote>
<p>Issue <a class="issue tracker-2 status-7 priority-4 priority-default closed" title="Feature: BasicObject#binding (Feedback)" href="https://bugs.ruby-lang.org/issues/5360">#5360</a> has been updated by George Koehler.</p>
<p>I can get a Binding from a BasicObject like so:</p>
<p>Â class Cow < BasicObject<br>
  Moo</p>
</blockquote> Ruby master - Feature #5360: BasicObject#bindinghttps://bugs.ruby-lang.org/issues/5360?journal_id=326982012-11-09T18:11:04Zmame (Yusuke Endoh)mame@ruby-lang.org
<ul><li><strong>Target version</strong> set to <i>2.6</i></li></ul> Ruby master - Feature #5360: BasicObject#bindinghttps://bugs.ruby-lang.org/issues/5360?journal_id=687122017-12-25T18:15:01Znaruse (Yui NARUSE)naruse@airemix.jp
<ul><li><strong>Target version</strong> deleted (<del><i>2.6</i></del>)</li></ul>