[prev] [thread] [next] [Date index for 2006/01/09]
------=_Part_1804_32940439.1136832175164 Content-Type: text/plain; charset=ISO-8859-1 Content-Transfer-Encoding: quoted-printable Content-Disposition: inline On 1/9/06, Kate Yoak <kate@xxxxxxxxx.xxx> wrote: > > $class->__grouper->add_group(TEMP =3D> $accessor); > I swiped this from Relationship::IsA whose code hasn't change as far as I > can tell - and it probably fails too. > I thought this was strange too. Not sure whether this is a bug of feature. I think is is preparation for the future versions where column objects will be powerful tools (if I understand the direction CDBI is heading correctly) I have just taken over IsA and have a patched version I have been using on CDBI 3.12. I am about to take all the debugging statements out or make them optional is probably more like it because I'm sure i will need them sometime. Attached is the patched version and let me know if it does not work for 3.13 . Also email me if you want an IsA version without the debugging statements. It may be a week before I have it on an SVN server . > Cheers, > Kate > _______________________________________________ > ClassDBI mailing list > ClassDBI@xxxxx.xxxxxxxxxxxxxxxx.xxx > http://lists.digitalcraftsmen.net/mailman/listinfo/classdbi > > > -- pjs ------=_Part_1804_32940439.1136832175164 Content-Type: application/x-perl; name="IsA.pm" Content-Transfer-Encoding: base64 Content-Disposition: attachment; filename="IsA.pm" cGFja2FnZSBDbGFzczo6REJJOjpSZWxhdGlvbnNoaXA6OklzQTsKCnByaW50ICJcblVzaW5nICpQ YXRjaGVkKiAgIENsYXNzOjpEQkk6OlJlbGF0aW9uc2hpcDo6SXNBIC4gSXQgaXMgcHJvYmFibHkg aW4gL3Vzci9saWIvcGVybDUvb3VyX3BlcmxcbiI7CgoKPWhlYWQxIE5BTUUKCkNsYXNzOjpEQkk6 OlJlbGF0aW9uc2hpcDo6SXNBIC0gQSBDbGFzczo6REJJIG1vZHVsZSBmb3IgJ0lzIEEnIHJlbGF0 aW9uc2hpcHMKCj1oZWFkMSBERVNDUklQVElPTgoKQ2xhc3M6OkRCSTo6UmVsYXRpb25zaGlwOjpJ c0EgUHJvdmlkZXMgYW4gSXMgQSByZWxhdGlvbnNoaXAgYmV0d2VlbiBDbGFzczo6REJJIGNsYXNz ZXMvdGFibGVzLgoKQnkgdXNpbmcgdGhpcyBtb2R1bGUgeW91IGNhbiBlbXVsYXRlIHNvbWUgZmVh dHVyZXMgb2YgaW5oZXJpdGFuY2UgYm90aCB3aXRoaW4geW91ciBkYXRhYmFzZSBhbmQgY2xhc3Nl cyB0aHJvdWdoIHRoZSBDbGFzczo6REJJIEFQSS4KCk5PVEU6IFRoaXMgbW9kdWxlIGlzIHN0aWxs IGV4cGVyaW1lbnRhbCwgc2V2ZXJhbCB2ZXJ5IG5hc3R5IGJ1Z3MgaGF2ZSBiZWVuIGZvdW5kIChh bmQgZml4ZWQpIG90aGVycyBtYXkgc3RpbGwgYmUgbHVya2luZyAtIHNlZSBDQVZFQVRTIEFORCBC VUdTIGJlbG93LgoKV2FybmluZyBXaWxsIFJvYmluc29uIQoKPWhlYWQxIFNZTk9QU0lTCgpJbiB5 b3VyIGRhdGFiYXNlIChhc3N1bWluZyBteXNxbCk6CgogY3JlYXRlIHRhYmxlIHBlcnNvbiAoCiAg IHBlcnNvbmlkIGludCBwcmltYXJ5IGtleSBhdXRvX2luY3JlbWVudCwKICAgZmlyc3RuYW1lIHZh cmNoYXIoMzIpLAogICBpbml0aWFscyB2YXJjaGFyKDE2KSwKICAgc3VybmFtZSB2YXJjaGFyKDY0 KSwKICAgZGF0ZV9vZl9iaXJ0aCBkYXRldGltZQogKTsKCiBjcmVhdGUgdGFibGUgYXJ0aXN0ICgK ICAgYXJ0aXN0aWQgaW50IHByaW1hcnkga2V5IGF1dG9faW5jcmVtZW50LAogICBhbGlhcyB2YXJj aGFyKDEyOCksCiAgIHBlcnNvbiBpbnQKICk7CgoKSW4geW91ciBjbGFzc2VzOgoKIHBhY2thZ2Ug TXVzaWM6OkRCSTsKIHVzZSBiYXNlICdDbGFzczo6REJJJzsKCiBNdXNpYzo6REJJLT5jb25uZWN0 aW9uKCdkYmk6bXlzcWw6ZGJuYW1lJywgJ3VzZXJuYW1lJywgJ3Bhc3N3b3JkJyk7CiBfX1BBQ0tB R0VfXy0+YWRkX3JlbGF0aW9uc2hpcF90eXBlKGlzX2EgPT4gJ0NsYXNzOjpEQkk6OlJlbGF0aW9u c2hpcDo6SXNBJyk7CgpTdXBlcmNsYXNzOgoKIHBhY2thZ2UgTXVzaWM6OlBlcnNvbjsKIHVzZSBi YXNlICdNdXNpYzo6REJJJzsKCiBNdXNpYzo6UGVyc29uLT50YWJsZSgncGVyc29uJyk7CiBNdXNp Yzo6UGVyc29uLT5jb2x1bW5zKEFsbCA9PiBxdy9wZXJzb25pZCBmaXJzdG5hbWUgaW5pdGlhbHMg c3VybmFtZSBkYXRlX29mX2JpcnRoLyk7CiBNdXNpYzo6UGVyc29uLT5jb2x1bW5zKFByaW1hcnkg PT4gcXcvcGVyc29uaWQvKTsgIyBHb29kIHByYWN0aWNlLCBsZXNzIGxpa2VseSB0byBicmVhayBJ c0EKCkNoaWxkIGNsYXNzOgoKIHBhY2thZ2UgTXVzaWM6OkFydGlzdDsKIHVzZSBiYXNlICdNdXNp Yzo6REJJJzsKIHVzZSBNdXNpYzo6UGVyc29uOyAjIHJlcXVpcmVkIGZvciBhY2Nlc3MgdG8gTXVz aWM6OlBlcnNvbiBtZXRob2RzCgogTXVzaWM6OkFydGlzdC0+dGFibGUoJ2FydGlzdCcpOwogTXVz aWM6OkFydGlzdC0+Y29sdW1ucyhBbGwgPT4gcXcvYXJ0aXN0aWQgYWxpYXMvKTsKIE11c2ljOjpQ ZXJzb24tPmNvbHVtbnMoUHJpbWFyeSA9PiBxdy9wZXJzb25pZC8pOyAjIEdvb2QgcHJhY3RpY2Us IGxlc3MgbGlrZWx5IHRvIGJyZWFrIElzQQogTXVzaWM6OkFydGlzdC0+aGFzX21hbnkoY2RzID0+ ICdNdXNpYzo6Q0QnKTsKIE11c2ljOjpBcnRpc3QtPmlzX2EocGVyc29uID0+ICdQZXJzb24nKTsg IyBNdXNpYzo6QXJ0aXN0IGluaGVyaXRzIGFjY2Vzc29ycyBmcm9tIE11c2ljOjpQZXJzb24KCi4u LiBlbHNld2hlcmUgLi4uCgogdXNlIE11c2ljOjpBcnRpc3Q7CiBteSAkYXJ0aXN0ID0gTXVzaWM6 OkFydGlzdC0+Y3JlYXRlKCB7Zmlyc3RuYW1lPT4nU2FyYWgnLCBzdXJuYW1lPT4nR2VsbGVyJywg YWxpYXM9PidCdWZmeSd9KTsKICRhcnRpc3QtPmluaXRpYWxzKCdNJyk7CiAkYXJ0aXN0LT51cGRh dGUoKTsKCj1jdXQKCnVzZSBzdHJpY3Q7Cm91ciAkVkVSU0lPTiA9ICcwLjA1JzsKCnVzZSB3YXJu aW5nczsKdXNlIGJhc2UgcXcoIENsYXNzOjpEQkk6OlJlbGF0aW9uc2hpcCApOwp1c2UgQ2xhc3M6 OkRCSTo6QWJzdHJhY3RTZWFyY2g7Cgp1c2UgRGF0YTo6RHVtcGVyOwoKc3ViIHJlbWFwX2FyZ3Vt ZW50cyB7CiAgICBteSAkcHJvdG8gPSBzaGlmdDsKICAgIG15ICRjbGFzcyA9IHNoaWZ0OwogICAg JGNsYXNzLT5faW52YWxpZF9vYmplY3RfbWV0aG9kKCdpc19hKCknKSBpZiByZWYgJGNsYXNzOwog ICAgbXkgJGNvbHVtbiA9ICRjbGFzcy0+ZmluZF9jb2x1bW4oc2hpZnQpCglvciByZXR1cm4gJGNs YXNzLT5fY3JvYWsoImlzX2EgbmVlZHMgYSB2YWxpZCBjb2x1bW4iKTsKICAgIG15ICRmX2NsYXNz ID0gc2hpZnQKCW9yICRjbGFzcy0+X2Nyb2FrKCIkY2xhc3MgJGNvbHVtbiBuZWVkcyBhbiBhc3Nv Y2lhdGVkIGNsYXNzIik7CiAgICBteSAlbWV0aHMgPSBAXzsKICAgIG15IEBmX2NvbHM7CiAgICBm b3JlYWNoIG15ICRmX2NvbCAoJGZfY2xhc3MtPmFsbF9jb2x1bW5zKSB7CglwdXNoIEBmX2NvbHMs ICRmX2NvbAoJICAgIHVubGVzcyAkZl9jb2wgZXEgJGZfY2xhc3MtPnByaW1hcnlfY29sdW1uOwog ICAgfQogICAgJGNsYXNzLT5fX2dyb3VwZXItPmFkZF9ncm91cChURU1QID0+IG1hcCB7ICRfIH0g QGZfY29scyk7CiAgICAkY2xhc3MtPl9fZ3JvdXBlci0+YWRkX2dyb3VwKF9fSU5IRVJJVEVEID0+ IG1hcCB7ICRfIH0gQGZfY29scyk7CiAgICAkY2xhc3MtPm1rX2NsYXNzZGF0YSgnX19pc2FfcmVs cycpOwogICAgJGNsYXNzLT5fX2lzYV9yZWxzKHsgfSk7CiAgICByZXR1cm4gKCRjbGFzcywgJGNv bHVtbiwgJGZfY2xhc3MsIFwlbWV0aHMpOwp9CgpzdWIgdHJpZ2dlcnMgewogICAgbXkgJHNlbGYg PSBzaGlmdDsKICAgICRzZWxmLT5jbGFzcy0+X3JlcXVpcmVfY2xhc3MoJHNlbGYtPmZvcmVpZ25f Y2xhc3MpOwogICAgbXkgJGNvbHVtbiA9ICRzZWxmLT5hY2Nlc3NvcjsKICAgIHJldHVybiAoCgkg ICAgc2VsZWN0ICAgICAgICA9PiAkc2VsZi0+X2luZmxhdG9yLAoJICAgIGJlZm9yZV9jcmVhdGUg PT4gJHNlbGYtPl9jcmVhdG9yLAogICAgICAgICAgICBiZWZvcmVfdXBkYXRlID0+IHN1YiB7CiAg ICAgICAgICAgICAgICBpZiAobXkgJGZfb2JqID0gJF9bMF0tPiRjb2x1bW4oKSkgeyAkZl9vYmot PnVwZGF0ZSB9CiAgICAgICAgICAgIH0sCgogICAgKTsKfQoKc3ViIG1ldGhvZHMgewogICAgbXkg JHNlbGYgPSBzaGlmdDsKICAgICRzZWxmLT5jbGFzcy0+X3JlcXVpcmVfY2xhc3MoJHNlbGYtPmZv cmVpZ25fY2xhc3MpOwoKICAgIG15ICRmb3JlaWduX2NsYXNzID0gJHNlbGYtPmZvcmVpZ25fY2xh c3M7CiAgICBteSAkY2xhc3MgPSAkc2VsZi0+Y2xhc3M7CiAgICB3YXJuICJmb3JlaWduIGNsYXNz IDogJGZvcmVpZ25fY2xhc3NcbiI7CgogICAgd2FybiAiZ2V0dGluZyByZWxhdGlvbnNoaXBzLi5c biI7CgoKICAgIG15ICRwYXJlbnRfcmVsYXRpb25fZmllbGRzID0gJHNlbGYtPl9pbmplY3RfaW5o ZXJpdGVkX3JlbGF0aW9uc2hpcHMoY2xhc3M9PiRjbGFzcywgZm9yZWlnbj0+JGZvcmVpZ25fY2xh c3MpOwoKICAgIG15ICRmb3JiaWRkZW5fZmllbGRzID0gIihpZHwke2NsYXNzfV8/dT9pZCI7CiAg ICAkZm9yYmlkZGVuX2ZpZWxkcyAuPSAoJGZvcmVpZ25fY2xhc3MtPmNvbHVtbnMoJ1ByaW1hcnkn KSkgPyAnfCcgLiAkZm9yZWlnbl9jbGFzcy0+Y29sdW1ucygnUHJpbWFyeScpIC4nKScgOiAnKScg OwogICAgd2FybiAiZm9yYmlkZGVuX2ZpZWxkcyA6ICRmb3JiaWRkZW5fZmllbGRzXG4iOwoKICAg IG15ICVtZXRob2RzOwogICAgbXkgJGFjY19uYW1lID0gJHNlbGYtPmFjY2Vzc29yLT5uYW1lOwog ICAgZm9yZWFjaCBteSAkZl9jb2wgKCRzZWxmLT5mb3JlaWduX2NsYXNzLT5hbGxfY29sdW1ucykg ewogICAgICAgIHdhcm4gImZfY29sIDogJGZfY29sLCBhY2NfbmFtZSA6ICRhY2NfbmFtZVxuIjsK ICAgICAgICBuZXh0IGlmICgkZl9jb2wgZXEgJGFjY19uYW1lIG9yICRmX2NvbCA9fiAvJGZvcmJp ZGRlbl9maWVsZHMvaSBvciAkcGFyZW50X3JlbGF0aW9uX2ZpZWxkcy0+eyRmX2NvbH0pOwoJaWYg KCRjbGFzcy0+Y2FuKCdwdXJlX2FjY2Vzc29yX25hbWUnKSkgewoJICAgICMgcHJvdmlkZSBzZXBl cmF0ZSByZWFkL3dyaXRlIGFjY2Vzc29yLCByZWFkIG9ubHkgYWNjZXNzb3IgYW5kIHdyaXRlIG9u bHkgbXV0YXRvcgoJICAgICRtZXRob2Rze3VjZmlyc3QoJGNsYXNzLT5wdXJlX2FjY2Vzc29yX25h bWUoJGZfY29sKSl9CgkJPSAkbWV0aG9kc3skY2xhc3MtPnB1cmVfYWNjZXNzb3JfbmFtZSgkZl9j b2wpfSA9ICRzZWxmLT5fZ2V0X21ldGhvZHMoJGFjY19uYW1lLCAkZl9jb2wsJ3JvJyk7CgkgICAg JG1ldGhvZHN7dWNmaXJzdCgkY2xhc3MtPm11dGF0b3JfbmFtZV9mb3IoJGZfY29sKSl9CgkJPSAk bWV0aG9kc3skY2xhc3MtPm11dGF0b3JfbmFtZV9mb3IoJGZfY29sKX0gPSAkc2VsZi0+X2dldF9t ZXRob2RzKCRhY2NfbmFtZSwgJGZfY29sLCd3bycpOwoJICAgICRtZXRob2Rze3VjZmlyc3QoJGNs YXNzLT5hY2Nlc3Nvcl9uYW1lX2ZvcigkZl9jb2wpKX0KCQk9ICRtZXRob2RzeyRjbGFzcy0+YWNj ZXNzb3JfbmFtZV9mb3IoJGZfY29sKX0gPSAkc2VsZi0+X2dldF9tZXRob2RzKCRhY2NfbmFtZSwg JGZfY29sLCdydycpOwoJfSBlbHNlIHsKCSAgICBpZiAoICRjbGFzcy0+bXV0YXRvcl9uYW1lX2Zv cigkZl9jb2wpIGVxICRjbGFzcy0+YWNjZXNzb3JfbmFtZV9mb3IoJGZfY29sKSApIHsKCQkjIHBy b3ZpZGUgcmVhZC93cml0ZSBhY2Nlc3NvcgoJCSRtZXRob2Rze3VjZmlyc3QoJGNsYXNzLT5hY2Nl c3Nvcl9uYW1lX2ZvcigkZl9jb2wpKX0KCQkgICAgPSAkbWV0aG9kc3skY2xhc3MtPmFjY2Vzc29y X25hbWVfZm9yKCRmX2NvbCl9ID0gJHNlbGYtPl9nZXRfbWV0aG9kcygkYWNjX25hbWUsICRmX2Nv bCwncncnKTsKCSAgICB9IGVsc2UgewoJCSMgcHJvdmlkZSBzZXBlcmF0ZSByZWFkIG9ubHkgYWNj ZXNzb3IgYW5kIHdyaXRlIG9ubHkgbXV0YXRvcgoJCSRtZXRob2Rze3VjZmlyc3QoJGNsYXNzLT5h Y2Nlc3Nvcl9uYW1lX2ZvcigkZl9jb2wpKX0KCQkgICAgPSAkbWV0aG9kc3skY2xhc3MtPmFjY2Vz c29yX25hbWVfZm9yKCRmX2NvbCl9ID0gJHNlbGYtPl9nZXRfbWV0aG9kcygkYWNjX25hbWUsICRm X2NvbCwncm8nKTsKCQkkbWV0aG9kc3t1Y2ZpcnN0KCRjbGFzcy0+bXV0YXRvcl9uYW1lX2Zvcigk Zl9jb2wpKX0KCQkgICAgPSAkbWV0aG9kc3skY2xhc3MtPm11dGF0b3JfbmFtZV9mb3IoJGZfY29s KX0gPSAkc2VsZi0+X2dldF9tZXRob2RzKCRhY2NfbmFtZSwgJGZfY29sLCd3bycpOwoJICAgIH0K CX0KICAgIH0KCiAgICAkbWV0aG9kc3tzZWFyY2hfd2hlcmV9ID0gJHNlbGYtPnNlYXJjaF93aGVy ZSBpZiAkc2VsZi0+Y2xhc3MtPmNhbignc2VhcmNoX3doZXJlJyk7CgogICAgcmV0dXJuKAoJICAg JW1ldGhvZHMsCgkgICBzZWFyY2ggICAgICA9PiAkc2VsZi0+c2VhcmNoLAoJICAgc2VhcmNoX2xp a2UgPT4gJHNlbGYtPnNlYXJjaF9saWtlLAoJICAgYWxsX2NvbHVtbnMgPT4gJHNlbGYtPmFsbF9j b2x1bW5zLAoJICApOwp9CgpzdWIgc2VhcmNoIHsKICAgIG15ICRzZWxmID0gc2hpZnQ7CiAgICBt eSAkU1VQRVIgPSAkc2VsZi0+Zm9yZWlnbl9jbGFzczsKICAgIG15ICRjb2wgPSAkc2VsZi0+YWNj ZXNzb3I7CiAgICB7CglubyBzdHJpY3QgInJlZnMiOwoJKnskc2VsZi0+Y2xhc3MuIjo6b3JpZ19z ZWFyY2gifSA9IFwmeyJDbGFzczo6REJJOjpzZWFyY2gifTsKICAgIH0KICAgIHJldHVybiBzdWIg ewogICAgICAgIG15ICgkc2VsZiwgJWFyZ3MpID0gKEBfKTsKICAgICAgICBteSAoJWNoaWxkLCAl cGFyZW50KTsKICAgICAgICBmb3JlYWNoIG15ICRrZXkgKGtleXMgJWFyZ3MpIHsKICAgICAgICAg ICAgJGNoaWxkeyRrZXl9ID0gJGFyZ3N7JGtleX0gaWYgJHNlbGYtPmhhc19yZWFsX2NvbHVtbigk a2V5KTsKICAgICAgICAgICAgJHBhcmVudHska2V5fSA9ICRhcmdzeyRrZXl9IGlmICRTVVBFUi0+ aGFzX3JlYWxfY29sdW1uKCRrZXkpOwogICAgICAgIH0KICAgICAgICBpZiglcGFyZW50KSB7CgkJ CSMgcGpzIFRPRE8gLS0gam9pbiBhbmQgY29uc3RydWN0IG1heWJlID8gCiAgICAgICAgICAgIHJl dHVybiBtYXAgeyAkc2VsZi0+b3JpZ19zZWFyY2goJGNvbCA9PiAkXy0+aWQsICVjaGlsZCkKCQkJ IH0gJFNVUEVSLT5zZWFyY2goJXBhcmVudCk7Cgl9IGVsc2UgewoJICAgIHJldHVybiAkc2VsZi0+ b3JpZ19zZWFyY2goJWNoaWxkKTsKCX0KICAgIH07Cn0KCnN1YiBzZWFyY2hfbGlrZSB7CiAgICBt eSAkc2VsZiA9IHNoaWZ0OwogICAgbXkgJFNVUEVSID0gJHNlbGYtPmZvcmVpZ25fY2xhc3M7CiAg ICBteSAkY29sID0gJHNlbGYtPmFjY2Vzc29yOwogICAgewoJbm8gc3RyaWN0ICJyZWZzIjsKCSp7 JHNlbGYtPmNsYXNzLiI6Om9yaWdfc2VhcmNoX2xpa2UifSA9IFwmeyJDbGFzczo6REJJOjpzZWFy Y2hfbGlrZSJ9OwogICAgfQogICAgcmV0dXJuIHN1YiB7CiAgICAgICAgbXkgKCRzZWxmLCAlYXJn cykgPSAoQF8pOwogICAgICAgIG15ICglY2hpbGQsICVwYXJlbnQpOwogICAgICAgIGZvcmVhY2gg bXkgJGtleSAoa2V5cyAlYXJncykgewogICAgICAgICAgICAkY2hpbGR7JGtleX0gPSAkYXJnc3sk a2V5fSBpZiAkc2VsZi0+aGFzX3JlYWxfY29sdW1uKCRrZXkpOwogICAgICAgICAgICAkcGFyZW50 eyRrZXl9ID0gJGFyZ3N7JGtleX0gaWYgJFNVUEVSLT5oYXNfcmVhbF9jb2x1bW4oJGtleSk7CiAg ICAgICAgfQogICAgICAgIGlmKCVwYXJlbnQpIHsKICAgICAgICAgICAgcmV0dXJuIG1hcCB7ICRz ZWxmLT5vcmlnX3NlYXJjaF9saWtlKCRjb2wgPT4gJF8tPmlkLCAlY2hpbGQpCiAgICAgICAgICAg ICAgICAgICAgICAgfSAkU1VQRVItPnNlYXJjaF9saWtlKCVwYXJlbnQpOwogICAgICAgIH0gZWxz ZSB7CiAgICAgICAgICAgIHJldHVybiAkc2VsZi0+b3JpZ19zZWFyY2hfbGlrZSglY2hpbGQpOwog ICAgICAgIH0KICAgIH07Cn0KCnN1YiBzZWFyY2hfd2hlcmUgewogICAgbXkgJHNlbGYgPSBzaGlm dDsKICAgIG15ICRTVVBFUiA9ICRzZWxmLT5mb3JlaWduX2NsYXNzOwogICAgbXkgJGNvbCA9ICRz ZWxmLT5hY2Nlc3NvcjsKICAgIHsKICAgICAgICBubyBzdHJpY3QgInJlZnMiOwogICAgICAgICp7 JHNlbGYtPmNsYXNzLiI6Om9yaWdfc2VhcmNoX3doZXJlIn0gPSBcJnsiQ2xhc3M6OkRCSTo6QWJz dHJhY3RTZWFyY2g6OnNlYXJjaF93aGVyZSJ9OwogICAgfQoKICAgIHJldHVybiBzdWIgewogICAg ICAgIG15ICgkc2VsZiwgJWFyZ3MpID0gKEBfKTsKICAgICAgICBteSAoJWNoaWxkLCAlcGFyZW50 KTsKICAgICAgICBmb3JlYWNoIG15ICRrZXkgKGtleXMgJWFyZ3MpIHsKICAgICAgICAgICAgJGNo aWxkeyRrZXl9ID0gJGFyZ3N7JGtleX0gaWYgJHNlbGYtPmhhc19yZWFsX2NvbHVtbigka2V5KTsK ICAgICAgICAgICAgJHBhcmVudHska2V5fSA9ICRhcmdzeyRrZXl9IGlmICRTVVBFUi0+aGFzX3Jl YWxfY29sdW1uKCRrZXkpOwogICAgICAgIH0KICAgICAgICBpZiglcGFyZW50KSB7CiAgICAgICAg ICAgIHJldHVybiBtYXAgeyAkc2VsZi0+b3JpZ19zZWFyY2hfd2hlcmUoJGNvbC0+bmFtZSA9PiAk Xy0+aWQsICVjaGlsZCkKCQkJIH0gJFNVUEVSLT5zZWFyY2hfd2hlcmUoJXBhcmVudCk7CiAgICAg ICAgfSBlbHNlIHsKICAgICAgICAgICAgcmV0dXJuICRzZWxmLT5vcmlnX3NlYXJjaF93aGVyZSgl Y2hpbGQpOwogICAgICAgIH0KICAgIH07Cn0KCnN1YiBhbGxfY29sdW1ucyB7CiAgICBteSAkc2Vs ZiA9IHNoaWZ0OwogICAgbXkgJFNVUEVSID0gJHNlbGYtPmZvcmVpZ25fY2xhc3M7CiAgICBteSAk Y29sID0gJHNlbGYtPmFjY2Vzc29yOwogICAgewoJbm8gc3RyaWN0ICJyZWZzIjsKCSp7JHNlbGYt PmNsYXNzLiI6Om9yaWdfYWxsX2NvbHVtbnMifSA9IFwmeyJDbGFzczo6REJJOjphbGxfY29sdW1u cyJ9OwogICAgfQogICAgcmV0dXJuIHN1YiB7CglteSAkc2VsZiA9IHNoaWZ0OwoJcmV0dXJuICgk c2VsZi0+b3JpZ19hbGxfY29sdW1ucywgJHNlbGYtPmNvbHVtbnMoJ1RFTVAnKSk7CiAgICB9Owp9 CgoKIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMj IyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMKCnN1YiBfaW5qZWN0X2luaGVyaXRlZF9yZWxhdGlv bnNoaXBzIHsKICBteSAoJHNlbGYsJXBhcmFtcykgPSBAXzsKICBteSAkY2xhc3MgPSAkcGFyYW1z e2NsYXNzfTsKICBteSAkZm9yZWlnbl9jbGFzcyA9ICRwYXJhbXN7Zm9yZWlnbn07CiAgbXkgJGZp ZWxkcyA9IHt9OwoKICBteSAlY3VycmVudF9yZWxhdGlvbnNoaXBzID0gKCk7CgogIGlmICgkY2xh c3MtPmNhbignbWV0YV9pbmZvJykpIHsKICAgIHdhcm4gImNsYXNzIGhhcyBtZXRhX2luZm8gIjsK ICAgICMgd2FybiBEdW1wZXIoJGNsYXNzLT5tZXRhX2luZm8pOwogICAgbXkgJG1ldGFfaW5mbyA9 ICRjbGFzcy0+bWV0YV9pbmZvOwogICAgZm9yZWFjaCBteSAkcmVsYXRpb25fdHlwZSAoIGtleXMg JSRtZXRhX2luZm8gKSB7CiAgICAgIG5leHQgaWYgKCRyZWxhdGlvbl90eXBlIGVxICdpc19hJyk7 CiAgICAgIGZvcmVhY2ggbXkgJHJlbG5hbWUgKGtleXMgJXskbWV0YV9pbmZvLT57JHJlbGF0aW9u X3R5cGV9fSkgewoJJGN1cnJlbnRfcmVsYXRpb25zaGlwc3skcmVsbmFtZX0gPSAxOwogICAgICB9 CiAgICB9CiAgfQoKICBpZiAoJGZvcmVpZ25fY2xhc3MtPmNhbignbWV0YV9pbmZvJykpIHsKICAg IHdhcm4gImZvcmVpZ24gY2xhc3MgaGFzIG1ldGFfaW5mbyAiOwogICAgIyB3YXJuIER1bXBlcigk Y2xhc3MtPm1ldGFfaW5mbyk7CiAgICBteSAkbWV0YV9pbmZvID0gJGZvcmVpZ25fY2xhc3MtPm1l dGFfaW5mbzsKICAgIGZvcmVhY2ggbXkgJHJlbGF0aW9uX3R5cGUgKCBrZXlzICUkbWV0YV9pbmZv ICkgewogICAgICBuZXh0IGlmICgkcmVsYXRpb25fdHlwZSBlcSAnaXNfYScpOwogICAgICBmb3Jl YWNoIG15ICRyZWxuYW1lIChrZXlzICV7JG1ldGFfaW5mby0+eyRyZWxhdGlvbl90eXBlfX0pIHsK CXdhcm4gImFkZGluZyBuZXcgcmVsYXRpb25zaGlwIDogJHJlbG5hbWUgXG4iOwoJJGZpZWxkcy0+ eyRyZWxuYW1lfSA9IDE7Cgkkc2VsZi0+X2luamVjdF9pbmhlcml0ZWRfbWV0aG9kKCRjbGFzcywg JHJlbG5hbWUpOwogICAgICB9CiAgICB9CiAgfQogIHJldHVybiAkZmllbGRzOwp9CgpzdWIgX2lu amVjdF9pbmhlcml0ZWRfbWV0aG9kIHsKICBteSAoJHNlbGYsJGNsYXNzLCRhY2Nlc3Nvcl9uYW1l KSA9IEBfOwogIG15ICRwYXJlbnRfYWNjZXNzb3IgPSAkc2VsZi0+YWNjZXNzb3I7CiAgbXkgJG1l dGhvZCA9IHN1YiB7CiAgICB3YXJuICJpbmplY3RlZCBtZXRob2QgJGFjY2Vzc29yX25hbWUgLCBj YWxsaW5nICRhY2Nlc3Nvcl9uYW1lIG9uIHBhcmVudCB2aWEgJHBhcmVudF9hY2Nlc3NvciBcbiI7 CiAgICB3YXJuICIuLmNhbGxlZCB3aXRoIGFyZ3MgIiwgam9pbignLCAnLEBfKSwgIlxuIjsKICAg IG15ICgkc2VsZiwgQGFyZ3MpID0gQF87CiAgICAkc2VsZi0+JHBhcmVudF9hY2Nlc3Nvci0+JGFj Y2Vzc29yX25hbWUoQGFyZ3MpOwogIH07CiAgewogICAgbm8gc3RyaWN0ICJyZWZzIjsKICAgICp7 IiR7Y2xhc3N9Ojoke2FjY2Vzc29yX25hbWV9In0gPSAkbWV0aG9kOwogIH0KfQoKc3ViIF9jcmVh dG9yIHsKICAgIG15ICRwcm90byA9IHNoaWZ0OwogICAgbXkgJGNvbCA9ICRwcm90by0+YWNjZXNz b3I7CgogICAgcmV0dXJuIHN1YiB7CglteSAkc2VsZiA9IHNoaWZ0OwoJbXkgJG1ldGEgPSAkc2Vs Zi0+bWV0YV9pbmZvKGlzX2EgPT4gJGNvbCk7CglteSAkZl9jbGFzcyA9ICRtZXRhLT5mb3JlaWdu X2NsYXNzOwoKCW15ICRoYXNoID0geyB9OwoKCWZvcmVhY2ggKCRzZWxmLT5fX2dyb3VwZXItPmdy b3VwX2NvbHMoJ1RFTVAnKSkgewoJICAgIG5leHQgdW5sZXNzIGRlZmluZWQoJHNlbGYtPl9hdHRy cygkXykpOwoJICAgICRoYXNoLT57JF99ID0gJHNlbGYtPl9hdHRycygkXyk7Cgl9CglteSAkZl9w ayA9ICRmX2NsYXNzLT5wcmltYXJ5X2NvbHVtbjsKCWlmICgkc2VsZi0+X2F0dHJzKCRmX3BrKSkg ewoJICAkaGFzaC0+eyRmX3BrfSA9ICRzZWxmLT5fYXR0cnMoJGZfcGspOwoJfQoKCW15ICRmX29i aiA9ICRmX2NsYXNzLT5jcmVhdGUoJGhhc2gpOwoJJHByb3RvLT5faW1wb3J0X2NvbHVtbl92YWx1 ZXMoJHNlbGYsICRmX2NsYXNzLCAkZl9vYmopOwoJIyBwanMgLS0gd2FudCBwa3Mgc2FtZSBmb3Ig aXNhICMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjCgkkc2VsZi0+X2F0dHJpYnV0ZV9zdG9y ZSgkc2VsZi0+cHJpbWFyeV9jb2x1bW4gPT4gJGZfb2JqLT5pZCk7CgkjIyMjIyMjIyMjIyMjIyMj IyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMKCXJldHVybiAkc2Vs Zi0+X2F0dHJpYnV0ZV9zdG9yZSgkY29sID0+ICRmX29iai0+aWQpOwogICAgfTsKfQoKCnN1YiBf aW5mbGF0b3IgewogICAgbXkgJHByb3RvID0gc2hpZnQ7CiAgICBteSAkY29sID0gJHByb3RvLT5h Y2Nlc3NvcjsKCiAgICByZXR1cm4gc3ViIHsKCW15ICRzZWxmID0gc2hpZnQ7CglteSAkdmFsdWUg PSAkc2VsZi0+JGNvbDsKCW15ICRtZXRhID0gJHNlbGYtPm1ldGFfaW5mbyhpc19hID0+ICRjb2wp OwoJbXkgJGZfY2xhc3MgPSAkbWV0YS0+Zm9yZWlnbl9jbGFzczsKCglyZXR1cm4gaWYgcmVmKCR2 YWx1ZSkgYW5kICR2YWx1ZS0+aXNhKCRmX2NsYXNzKTsKCgkkdmFsdWUgPSAkZl9jbGFzcy0+X3Np bXBsZV9ibGVzcygkdmFsdWUpOwoJJHByb3RvLT5faW1wb3J0X2NvbHVtbl92YWx1ZXMoJHNlbGYs ICRmX2NsYXNzLCAkdmFsdWUpOwoKCXJldHVybiAkc2VsZi0+X2F0dHJpYnV0ZV9zdG9yZSgkY29s ID0+ICR2YWx1ZSk7CiAgICB9Owp9CgpzdWIgX2ltcG9ydF9jb2x1bW5fdmFsdWVzIHsKICAgIG15 ICgkc2VsZiwgJGNsYXNzLCAkZl9jbGFzcywgJGZfb2JqKSA9IChAXyk7CiAgICBmb3JlYWNoICgk Zl9jbGFzcy0+YWxsX2NvbHVtbnMpIHsKCSRjbGFzcy0+X2F0dHJpYnV0ZV9zdG9yZSgkXywgJGZf b2JqLT4kXykKCSAgICB1bmxlc3MgJF8tPm5hbWUgZXEgJGNsYXNzLT5wcmltYXJ5X2NvbHVtbi0+ bmFtZTsKICAgIH0KfQoKc3ViIF9zZXRfdXBfY2xhc3NfZGF0YSB7CiAgICAgICAgbXkgJHNlbGYg PSBzaGlmdDsKICAgICAgICAkc2VsZi0+Y2xhc3MtPl9leHRlbmRfY2xhc3NfZGF0YShfX2lzYV9y ZWxzID0+ICRzZWxmLT5hY2Nlc3NvciA9PgogICAgICAgICAgICAgICAgICAgICAgICBbICRzZWxm LT5mb3JlaWduX2NsYXNzLCAleyAkc2VsZi0+YXJncyB9IF0pOwogICAgICAgICRzZWxmLT5TVVBF Ujo6X3NldF91cF9jbGFzc19kYXRhOwp9CgoKc3ViIF9nZXRfbWV0aG9kcyB7CiAgICBteSAoJHNl bGYsICRhY2NfbmFtZSwgJGZfY29sLCAkbW9kZSkgPSBAXzsKICAgIHdhcm4gIl9nZXRfbWV0aG9k cyAkYWNjX25hbWUsICRmX2NvbCwgJG1vZGUgXG4iOwogICAgd2FybiBqb2luKCcsICcsY2FsbGVy KCkpOwogICAgbXkgJG1ldGhvZDsKIE1PREU6IHsKCWlmICgkbW9kZSBlcSAncncnKSB7CgkgICAg JG1ldGhvZCA9IHN1YiB7CgkgICAgICB3YXJuICJhcnRpZmljaWFsIG1ldGhvZCAkYWNjX25hbWUv JGZfY29sIGNhbGxlZCB3aXRoIGFyZ3MgIiwgam9pbignLCAnLEBfKSwgIlxuIjsKCQlteSAoJHNl bGYsIEBhcmdzKSA9IEBfOwoJCWlmKEBhcmdzKSB7CgkJICAkc2VsZi0+JGFjY19uYW1lLT4kZl9j b2woQGFyZ3MpOwoJCSAgcmV0dXJuOwoJCX0gZWxzZSB7CgkJICByZXR1cm4gJHNlbGYtPiRhY2Nf bmFtZS0+JGZfY29sOwoJCX0KCSAgICB9OwoJICAgIGxhc3QgTU9ERTsKCX0KCWlmICgkbW9kZSBl cSAncm8nKSB7CgkgICAgJG1ldGhvZCA9IHN1YiB7CgkJbXkgJHNlbGYgPSBzaGlmdDsKCQlyZXR1 cm4gJHNlbGYtPiRhY2NfbmFtZS0+JGZfY29sOwoJICAgIH07CgkgICAgbGFzdCBNT0RFOwoJfQoJ aWYgKCRtb2RlIGVxICd3bycpIHsKCSAgICAkbWV0aG9kID0gIHN1YiB7CgkJbXkgJHNlbGYgPSBz aGlmdDsKCQkkc2VsZi0+JGFjY19uYW1lLT4kZl9jb2woQF8pOwoJCXJldHVybjsKCSAgICB9OwoJ ICAgIGxhc3QgTU9ERTsKCX0KCgllbHNlIHsKCSAgICBkaWUgImNhbid0IGdldCBtZXRob2QgZm9y IG1vZGUgOiRtb2RlXG4iOwoJfQogICAgfSAjIGVuZCBvZiBNT0RFCiAgICByZXR1cm4gJG1ldGhv ZDsKfQoKIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMj IyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMKCj1oZWFkMSBCVUdTIEFORCBDQVZFQVRTCgoq IE11bHRpcGxlIGluaGVyaXRhbmNlIGlzIG5vdCBzdXBwb3J0ZWQsIHRoaXMgaXMgdW5saWtlbHkg dG8gY2hhbmdlIGZvciB0aGUgZm9yc2VhYmxlIGZ1dHVyZQoKKiBpc19hIG11c3QgYmUgY2FsbGVk IGFmdGVyIGFsbCBvdGhlciBjZGJpIHJlbGF0aW9uc2hpcCBtZXRob2RzIG90aGVyd2lzZSBpbmhl cml0ZWQgbWV0aG9kcyBhbmQgCmFjY2Vzc29ycyBtYXkgYmUgb3Zlci1yaWRkZW4gb3IgY2xhc2gg dW5leHBlY3RlZGx5CgoqIG5vbiBDbGFzczo6REJJIGF0dHJpYnV0ZXMgYW5kIG1ldGhvZHMgYXJl IG5vdCBpbmhlcml0ZWQgdmlhIHRoaXMgbW9kdWxlCgoqIFRoZSB1cGRhdGUgbWV0aG9kIGlzIGNh bGxlZCBvbiB0aGUgaW5oZXJpdGVkIG9iamVjdCB3aGVuIHRoZSBpbmhlcnRpdGluZyBvYmplY3Qg aGFzIHVwZGF0ZSBjYWxsZWQKCiogQWx3YXlzIHNwZWNpZnkgdGhlIHByaW1hcnkga2V5IHVzaW5n IGNvbHVtbnMoUHJpbWFyeSA9PiBxdy8uLi8pIGlmIHlvdSBkb24ndCBiYWQgdGhpbmdzIGNvdWxk IGhhcHBlbiwgdGhpbmsgb2YgdGhlIG1vdmllcyAnVHJlbW9ycycsICdQb2x0ZXJnZWlzdCcgYW5k ICdFdmlsIERlYWQnIGFsbCByb2xsZWQgaW50byBvbmUgYnV0IHdpdGhvdXQgYW55IGhlcm9zLgoK KiBWZXJ5IEJhZCBUaGluZ3MgY2FuIGFuZCBtYXkgb2NjdXIgd2hlbiB1c2luZyB0aGlzIG1vZHVs ZSBldmVuIGlmIHlvdSB1c2UgZ29vZCBwcmFjdGljZSBhbmQgYXJlIGNhdXRpb3VzIC0tIHRoaXMg aW5jbHVkZXMgYnV0IGlzIG5vdCBsaW1pdGVkIHRvIGluZmluaXRlIGxvb3BzLCBtZW1vcnkgbGVh a3MgYW5kIGRhdGEgY29ycnVwdGlvbi4KCj1oZWFkMSBERVBFTkRBTkNJRVMKCkw8Q2xhc3M6OkRC STo6QWJzdHJhY3RTZWFyY2g+Cgo9aGVhZDEgU0VFIEFMU08KCkw8cGVybD4KCkw8Q2xhc3M6OkRC ST4KCkw8Q2xhc3M6OkRCSTo6UmVsYXRpb25zaGlwPgoKPWhlYWQxIEFVVEhPUgoKUmljaGFyZCBI dW5kdCwgRTxsdD5yaWNoYXJkQHdlYnRrLm9yZy51a0U8Z3Q+Cgo9aGVhZDEgTUFJTlRBSU5FUgoK QWFyb24gVHJldmVuYSBFPGx0PmFhcm9uLnRyZXZlbmFAZHJvb2dzLm9yZ0U8Z3Q+Cgo9aGVhZDEg Q09QWVJJR0hUCgpMaWNlbnNlZCBmb3IgdXNlLCBtb2RpZmljYXRpb24gYW5kIGRpc3RyaWJ1dGlv biB1bmRlciB0aGUgQXJ0aXN0aWMKYW5kIEdOVSBHUEwgbGljZW5zZXMuCgpDb3B5cmlnaHQgKEMp IDIwMDQgYnkgUmljaGFyZCBIdW5kdCBhbmQgQWFyb24gVHJldmVuYQoKVGhpcyBsaWJyYXJ5IGlz IGZyZWUgc29mdHdhcmU7IHlvdSBjYW4gcmVkaXN0cmlidXRlIGl0IGFuZC9vciBtb2RpZnkKaXQg dW5kZXIgdGhlIHNhbWUgdGVybXMgYXMgUGVybCBpdHNlbGYsIGVpdGhlciBQZXJsIHZlcnNpb24g NS44LjEgb3IsCmF0IHlvdXIgb3B0aW9uLCBhbnkgbGF0ZXIgdmVyc2lvbiBvZiBQZXJsIDUgeW91 IG1heSBoYXZlIGF2YWlsYWJsZS4KCj1jdXQKCgojIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMj IyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIwojIyMj IyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMj IyMjIyMjIyMjIyMjIyMjIyMjIwoKMTsKCg== ------=_Part_1804_32940439.1136832175164 Content-Type: text/plain; charset="us-ascii" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit Content-Disposition: inline _______________________________________________ ClassDBI mailing list ClassDBI@xxxxx.xxxxxxxxxxxxxxxx.xxx http://lists.digitalcraftsmen.net/mailman/listinfo/classdbi ------=_Part_1804_32940439.1136832175164--
[CDBI] add_column - bug or feature?
|
Re: [CDBI] add_column - bug or feature?
|
Re: [CDBI] add_column - bug or feature?
|
Re: [CDBI] add_column - bug or feature?
|
Generated at 09:31 on 23 Jan 2006 by mariachi v0.52