https://redmine.ruby-lang.org/https://redmine.ruby-lang.org/favicon.ico?17113305112016-05-12T18:30:00ZRuby Issue Tracking SystemRuby master - Feature #12374: SingletonClasshttps://redmine.ruby-lang.org/issues/12374?journal_id=585982016-05-12T18:30:00Zsawa (Tsuyoshi Sawada)
<ul></ul><p>Sorry, for the last example, I meant:</p>
<pre><code class="ruby syntaxhl" data-language="ruby"><span class="no">A</span> <span class="o">=</span> <span class="no">SingletonClass</span><span class="p">.</span><span class="nf">new</span>
</code></pre> Ruby master - Feature #12374: SingletonClasshttps://redmine.ruby-lang.org/issues/12374?journal_id=587752016-05-20T15:45:56Zdsferreira (Daniel Ferreira)
<ul></ul><p>Typo corrected</p> Ruby master - Feature #12374: SingletonClasshttps://redmine.ruby-lang.org/issues/12374?journal_id=587762016-05-20T15:56:31Zdsferreira (Daniel Ferreira)
<ul><li><strong>Description</strong> updated (<a title="View differences" href="/journals/58776/diff?detail_id=41309">diff</a>)</li></ul> Ruby master - Feature #12374: SingletonClasshttps://redmine.ruby-lang.org/issues/12374?journal_id=587772016-05-20T16:00:27Znobu (Nobuyoshi Nakada)nobu@ruby-lang.org
<ul><li><strong>Status</strong> changed from <i>Open</i> to <i>Feedback</i></li></ul><p>What is <code>SingletonClass</code>?<br>
A wrapper object?</p>
<pre><code class="ruby syntaxhl" data-language="ruby"><span class="k">def</span> <span class="p">(</span><span class="no">SingletonClass</span> <span class="o">=</span> <span class="no">Object</span><span class="p">.</span><span class="nf">new</span><span class="p">)</span><span class="o">.</span><span class="nf">new</span><span class="p">(</span><span class="o">*</span><span class="n">args</span><span class="p">)</span>
<span class="no">Class</span><span class="p">.</span><span class="nf">new</span><span class="p">(</span><span class="o">*</span><span class="n">args</span><span class="p">)</span> <span class="p">{</span><span class="kp">include</span> <span class="no">Singleton</span><span class="p">}</span>
<span class="k">end</span>
</code></pre> Ruby master - Feature #12374: SingletonClasshttps://redmine.ruby-lang.org/issues/12374?journal_id=587822016-05-21T02:39:59Zsawa (Tsuyoshi Sawada)
<ul></ul><p>Nobuyoshi Nakada wrote:</p>
<blockquote>
<p>What is <code>SingletonClass</code>?<br>
A wrapper object?</p>
</blockquote>
<p>No, it should be a subclass of <code>Class</code>. It would perhaps need C-level modification. For any singleton class, I want <code>SingletonClass</code> to be its class.</p>
<p>Present:</p>
<pre><code class="ruby syntaxhl" data-language="ruby"><span class="s2">""</span><span class="p">.</span><span class="nf">singleton_class</span><span class="p">.</span><span class="nf">class</span>
<span class="c1"># => Class</span>
<span class="s2">""</span><span class="p">.</span><span class="nf">singleton_class</span><span class="p">.</span><span class="nf">class</span><span class="p">.</span><span class="nf">ancestors</span>
<span class="c1"># => [Class, Module, Object, Kernel, BasicObject]</span>
</code></pre>
<p>I want it to be:</p>
<pre><code class="ruby syntaxhl" data-language="ruby"><span class="s2">""</span><span class="p">.</span><span class="nf">singleton_class</span><span class="p">.</span><span class="nf">class</span>
<span class="c1"># => SingletonClass</span>
<span class="s2">""</span><span class="p">.</span><span class="nf">singleton_class</span><span class="p">.</span><span class="nf">class</span><span class="p">.</span><span class="nf">ancestors</span>
<span class="c1"># => [SingletonClass, Class, Module, Object, Kernel, BasicObject]</span>
</code></pre> Ruby master - Feature #12374: SingletonClasshttps://redmine.ruby-lang.org/issues/12374?journal_id=587842016-05-21T03:03:54Znobu (Nobuyoshi Nakada)nobu@ruby-lang.org
<ul></ul><p>If a singleton class is a subclass of <code>SingletonClass</code>, no singleton classed inheriting other classes cannot be made.<br>
I think it's a bad idea.</p> Ruby master - Feature #12374: SingletonClasshttps://redmine.ruby-lang.org/issues/12374?journal_id=587852016-05-21T03:05:44Zsawa (Tsuyoshi Sawada)
<ul></ul><p>Nobuyoshi Nakada wrote:</p>
<blockquote>
<p>If a singleton class is a subclass of <code>SingletonClass</code>, no singleton classed inheriting other classes cannot be made.<br>
I think it's a bad idea.</p>
</blockquote>
<p>Sorry, my previous example was inappropriate. I fixed it. I want a singleton class to be an <strong>instance</strong> of <code>SingletonClass</code>.</p> Ruby master - Feature #12374: SingletonClasshttps://redmine.ruby-lang.org/issues/12374?journal_id=598902016-08-03T04:07:19Ztrans (Thomas Sawyer)
<ul></ul><p>So...</p>
<pre><code>Object..singleton_class.instance_of?(SingletonClass) #=> true
</code></pre> Ruby master - Feature #12374: SingletonClasshttps://redmine.ruby-lang.org/issues/12374?journal_id=599972016-08-09T06:13:44Zmatz (Yukihiro Matsumoto)matz@ruby.or.jp
<ul><li><strong>Status</strong> changed from <i>Feedback</i> to <i>Closed</i></li></ul><p>I don't think the idea itself is meaningless.<br>
But its use-case is not clear to us yet.</p>
<p>(For the record, Singleton module is totally different story.)</p>
<p>If you have any real-world use-case, please reopen the issue.</p>
<p>Matz.</p>