Forum: D Programlama Dili RSS
__traits
Mengu (Moderatör) #1
Kullanıcı başlığı: NONSERVIAM
Üye Tem 2009 tarihinden beri · 347 mesaj · Konum: Dersaadet
Grup üyelikleri: Genel Moderatörler, Üyeler
Profili göster · Bu konuya bağlantı
Konu adı: __traits
uzun zamandir d'de aradigim bir seyi buldum, cok sevindim.

python'da dir() diye bir method var, bir nesnenin tum attributelarini ve kullanabilecegi metodlari gosteriyor. bunun d'de nasil oldugunu bilmiyordum, bir suredir de ogrenmeye calisiyordum, sonunda #d kanalindaki d1ciler sagolsunlar, hem d2'yi sevmeyip, hem de gayet iyi biliyorlarmis ki __traits kullanmami tavsiye ettiler. :)

diyelim ki soyle bir sinifimiz var:

class Person
{
    string name;
    string lastname;
    string age;
 
    void damnIt() {
        writeln("Damning it in 5 seconds..");
    }
}

bu sinifa ait name, lastname, age gibi attributelari ve damnIt metodunu vs. gorebilmek icin sunu kullaniyoruz:

string[] members = [__traits(allMembers, Person)];
writeln(members);
// cikti:
// name lastname age damnIt toString toHash opCmp opEquals Monitor factory 

hepsi ve daha fazlasi icin: http://digitalmars.com/d/2.0/traits.html

hani reflection api yok diyordum ya, varmis. :D
http://www.mengu.net - some kind of monster
Doğrulama Kodu: VeriCode Lütfen resimde gördüğünüz doğrulama kodunu girin:
İfadeler: :-) ;-) :-D :-p :blush: :cool: :rolleyes: :huh: :-/ <_< :-( :'( :#: :scared: 8-( :nuts: :-O
Özel Karakterler:
Bağlı değilsiniz. · Şifremi unuttum · ÜYELİK
This board is powered by the Unclassified NewsBoard software, 20100516-dev, © 2003-10 by Yves Goergen
Şu an: 2017-11-18, 04:06:22 (UTC -08:00)