Article View: pl.comp.lang.ruby
Article #220Re: Jak dodać własną metodę typu nazwa! do klasy?
From: Marcin Mielżyński
Date: Sat, 07 Oct 2006 21:38
Date: Sat, 07 Oct 2006 21:38
34 lines
1644 bytes
1644 bytes
Tutaj chodzi chyba spójność z Fixnumem. Pomimo że Float nie jest
immediate value - jest immutable. Choć z definicji:
struct RFloat {
struct RBasic basic;
double value;
};
wynikałoby że jest mutable.
najmniej można zrobić z Fixnumami bo jego instancje to poprostu 4 (lub 8
na 64 bitowych platformach) bajtów w pamięci z ustawionym najmłodszym
bitem - więc nie mają składowej basic a przez to nie mają składowej
klass, ...wogóle nic nie mają i nie można zrobić np tak:
class << 1
end
: no virtual class for Fixnum (TypeError)
tutaj jest algorytm dekodowania typów Rubiego:
http://www.oreillynet.com/ruby/blog/2006/01/the_ruby_value_1.html
...Najlepiej zrób kompozycje.
lopex
Technical Details
Message-ID:
<eg96pc$u4t$1@news.onet.pl>Path:
mbox-mo1.pugleaf.net!news-archive.icm.edu.pl!newsfeed.gazeta.pl!news.onet.pl!not-for-mailReferences:
<eg90si$dj4$1@news.task.gda.pl>Show Full Headers
Complete Article Headers
Path: mbox-mo1.pugleaf.net!news-archive.icm.edu.pl!newsfeed.gazeta.pl!news.onet.pl!not-for-mail From: Marcin Mielżyński <lopx@gazeta.pl> Newsgroups: pl.comp.lang.ruby Subject: Re: Jak dodać własną metodę typu nazwa! do klasy? Date: Sat, 07 Oct 2006 23:38:50 +0200 Organization: Onet.pl Lines: 34 Message-ID: <eg96pc$u4t$1@news.onet.pl> References: <eg90si$dj4$1@news.task.gda.pl> NNTP-Posting-Host: chello087207016023.chello.pl Mime-Version: 1.0 X-Trace: news.onet.pl 1160257132 30877 87.207.16.23 (7 Oct 2006 21:38:52 GMT) X-Complaints-To: usenet@news.onet.pl NNTP-Posting-Date: Sat, 7 Oct 2006 21:38:52 +0000 (UTC) X-Sender: 5Da2qcG7AWj7WISFX859Php/OS6q4VnB In-Reply-To: <eg90si$dj4$1@news.task.gda.pl> User-Agent: Thunderbird 1.5.0.7 (Windows/20060909) Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit