cwbe coordinatez:
101
63540
2076399
856608
2224565
2224993
2226085

ABSOLUT
KYBERIA
permissions
you: r,
system: public
net: yes

neurons

stats|by_visit|by_K
source
tiamat
K|my_K|given_K
last
commanders
polls

total descendants::
total children::1
show[ 2 | 3] flat


hackovanie to je, lebo povodna libka, ktoru wrapujem je hackovanie.

problem je v tom, ze __getattr__ nie je v call stacku a teda sa tam neda chytit akakolvek exception.

takze sa to da spravit takto:
http://phpfi.com/106655
(to mi poradil vcera chlapik na #python na freenode). kukali sme ten povodny kod, toto je najkrajsi sposob ako sa to da spravit bez prepisovania povodnej libky. ja som nakoniec prepisal povodnu libku, lebo som tam nasiel aj dalsie bugy a wrapovanie teda stratilo akykolvek zmysel pri 300 riadkovej public domain libke.




0000010100063540020763990085660802224565022249930222608502229380
mr gramma
 mr gramma      13.03.2006 - 10:10:19 , level: 1, UP   NEW
ak to chces este riesit, tak by bolo zaujmave ukazat code kde "volas" __getattr__ lebo tato funkcia sa vola pre niaky object x takto x.__getattr__(y) ked chces dostupovat na x.y, ale y neni v x.__dict__, cize objekt x nema attribute y.

000001010006354002076399008566080222456502224993022260850222938002233892
juraj
 juraj      14.03.2006 - 17:50:34 , level: 2, UP   NEW
je tam asi 30 "atributov", ktore su metodami. jedna sa o python klientsku libku pre mpd.

cize volam normalne player.play(), player.stop(), player.list('artist','coil') a podobne.

idea moja bola taka, ze kazda z tych metod moze vratit EOFError, ked sa strati connection k mpd (co sa stane velmi rychlo, je tam nejaky maly timeout). kedze je to bezstavovy protokol, staci mi jednoducho to spojenie otvorit nanovo. chcel som to takto owrappovat, aby som nemusel menit libku a priapdne nove verzie pouzit, ale v tej libke bolo aj par dalsich bugov v internych objektoch, ktore nebolo mozne wrappovanim riesit (ak by som nechcel do mojho wrappera opastovat polku libky). tak som ju nakoniec prekodil.