--------------enig5CA113EFF872EFA9195D832D Content-Type: multipart/mixed; boundary -----------050706050807050402020306" This is a multi-part message in MIME format. --------------050706050807050402020306 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: quoted-printable Hello, I've written a patch for ri to also show subclasses at the class documentation. The output with the patch looks like this: ~> ri -T Momomoto -------------------------------------------------------- Class: Momomoto Momomoto is a database abstraction layer ------------------------------------------------------------------------ SubClasses: ----------- Base, CriticalError, Database, Datatype, Error, Function, Information_schema, Table, View I've attached a patch to the ri classes and a standalone version. I would really love to see this integrated into the official ri. Sven --------------050706050807050402020306 Content-Type: text/plain; name i-patch.diff" Content-Transfer-Encoding: base64 Content-Disposition: inline; filename i-patch.diff" ZGlmZiAtd3VyIHJkb2Mtb3JnL3JpL3JpX2Rlc2NyaXB0aW9ucy5yYiByZG9jL3JpL3JpX2Rl c2NyaXB0aW9ucy5yYgotLS0gcmRvYy1vcmcvcmkvcmlfZGVzY3JpcHRpb25zLnJiCTIwMDYt MDQtMDIgMjA6NDY6MDQuMDAwMDAwMDAwICswMjAwCisrKyByZG9jL3JpL3JpX2Rlc2NyaXB0 aW9ucy5yYgkyMDA2LTA0LTAyIDIwOjQ3OjIxLjAwMDAwMDAwMCArMDIwMApAQCAtNjMsNiAr NjMsNyBAQAogICAgIGF0dHJfYWNjZXNzb3IgOm5hbWUKICAgICBhdHRyX2FjY2Vzc29yIDpm dWxsX25hbWUKICAgICBhdHRyX2FjY2Vzc29yIDpjb21tZW50CisgICAgYXR0cl9hY2Nlc3Nv ciA6c3ViY2xhc3NlcwogCiAgICAgZGVmIHNlcmlhbGl6ZQogICAgICAgc2VsZi50b195YW1s CmRpZmYgLXd1ciByZG9jLW9yZy9yaS9yaV9kaXNwbGF5LnJiIHJkb2MvcmkvcmlfZGlzcGxh eS5yYgotLS0gcmRvYy1vcmcvcmkvcmlfZGlzcGxheS5yYgkyMDA2LTA0LTAyIDIwOjQ2OjA0 LjAwMDAwMDAwMCArMDIwMAorKysgcmRvYy9yaS9yaV9kaXNwbGF5LnJiCTIwMDYtMDQtMDIg MjA6NTM6MTUuMDAwMDAwMDAwICswMjAwCkBAIC0xMzYsNiArMTM2LDEyIEBACiAgICAgICAg IEBmb3JtYXR0ZXIud3JhcCgiQXR0cmlidXRlczoiLCAiIikKICAgICAgICAgQGZvcm1hdHRl ci53cmFwKGtsYXNzLmF0dHJpYnV0ZXMubWFwe3xhfCBhLm5hbWV9LnNvcnQuam9pbignLCAn KSkKICAgICAgIGVuZAorCisgICAgICB1bmxlc3Mga2xhc3Muc3ViY2xhc3Nlcy5lbXB0eT8K KyAgICAgICAgQGZvcm1hdHRlci5ibGFua2xpbmUKKyAgICAgICAgQGZvcm1hdHRlci5kaXNw bGF5X2hlYWRpbmcoIlN1YkNsYXNzZXM6IiwgMiwgIiIpCisgICAgICAgIEBmb3JtYXR0ZXIu d3JhcChrbGFzcy5zdWJjbGFzc2VzLnNvcnQuam9pbignLCAnKSkKKyAgICAgIGVuZAogICAg IGVuZAogICBlbmQKICAgCmRpZmYgLXd1ciByZG9jLW9yZy9yaS9yaV9yZWFkZXIucmIgcmRv Yy9yaS9yaV9yZWFkZXIucmIKLS0tIHJkb2Mtb3JnL3JpL3JpX3JlYWRlci5yYgkyMDA2LTA0 LTAyIDIwOjQ2OjA0LjAwMDAwMDAwMCArMDIwMAorKysgcmRvYy9yaS9yaV9yZWFkZXIucmIJ MjAwNi0wNC0wMiAyMDo1MTozMy4wMDAwMDAwMDAgKzAyMDAKQEAgLTUxLDcgKzUxLDE3IEBA CiAgICAgICByZXN1bHQgPSBuaWwKICAgICAgIGZvciBwYXRoIGluIGNsYXNzX2VudHJ5LnBh dGhfbmFtZXMKICAgICAgICAgcGF0aCA9IFJpV3JpdGVyLmNsYXNzX2Rlc2NfcGF0aChwYXRo LCBjbGFzc19lbnRyeSkKKyAgICAgICAgZGlyID0gRGlyLm9wZW4oIEZpbGUuZGlybmFtZSgg cGF0aCApICkKKyAgICAgICAgc3ViY2xhc3NlcyA9IFtdCisgICAgICAgIGRpci5lYWNoIGRv IHwgZCB8CisgICAgICAgICAgbmV4dCBpZiBkLm1hdGNoKC9eXC4vKQorICAgICAgICAgIG5l eHQgdW5sZXNzIEZpbGUuZGlyZWN0b3J5PyggRmlsZS5qb2luKCBkaXIucGF0aCwgZCApICkK KyAgICAgICAgICBzdWJjbGFzc2VzLnB1c2goIGQgKQorICAgICAgICBlbmQKKwogICAgICAg ICBkZXNjID0gRmlsZS5vcGVuKHBhdGgpIHt8ZnwgUkk6OkRlc2NyaXB0aW9uLmRlc2VyaWFs aXplKGYpIH0KKyAgICAgICAgZGVzYy5zdWJjbGFzc2VzID0gc3ViY2xhc3NlcworCiAgICAg ICAgIGlmIHJlc3VsdAogICAgICAgICAgIHJlc3VsdC5tZXJnZV9pbihkZXNjKQogICAgICAg ICBlbHNlCg --------------050706050807050402020306 Content-Type: text/plain; name i" Content-Transfer-Encoding: base64 Content-Disposition: inline; filename i" IyEvdXNyL2Jpbi9lbnYgcnVieQoKcmVxdWlyZSAncmRvYy9yaS9yaV9kcml2ZXInCgptb2R1 bGUgUkkKCiAgY2xhc3MgRGVzY3JpcHRpb24KICAgIGF0dHJfYWNjZXNzb3IgOnN1YmNsYXNz ZXMKICBlbmQKCiAgY2xhc3MgUmlSZWFkZXIKCiAgICAjIFJldHVybiBhIGNsYXNzIGRlc2Ny aXB0aW9uCiAgICBkZWYgZ2V0X2NsYXNzKGNsYXNzX2VudHJ5KQogICAgICByZXN1bHQgPSBu aWwKICAgICAgZm9yIHBhdGggaW4gY2xhc3NfZW50cnkucGF0aF9uYW1lcwogICAgICAgIHBh dGggPSBSaVdyaXRlci5jbGFzc19kZXNjX3BhdGgocGF0aCwgY2xhc3NfZW50cnkpCiAgICAg ICAgZGlyID0gRGlyLm9wZW4oIEZpbGUuZGlybmFtZSggcGF0aCApICkKICAgICAgICBzdWJj bGFzc2VzID0gW10KICAgICAgICBkaXIuZWFjaCBkbyB8IGQgfAogICAgICAgICAgbmV4dCBp ZiBkLm1hdGNoKC9eXC4vKQogICAgICAgICAgbmV4dCB1bmxlc3MgRmlsZS5kaXJlY3Rvcnk/ KCBGaWxlLmpvaW4oIGRpci5wYXRoLCBkICkgKQogICAgICAgICAgc3ViY2xhc3Nlcy5wdXNo KCBkICkKICAgICAgICBlbmQKCiAgICAgICAgZGVzYyA9IEZpbGUub3BlbihwYXRoKSB7fGZ8 IFJJOjpEZXNjcmlwdGlvbi5kZXNlcmlhbGl6ZShmKSB9CiAgICAgICAgZGVzYy5zdWJjbGFz c2VzID0gc3ViY2xhc3Nlcy5zb3J0CgogICAgICAgIGlmIHJlc3VsdAogICAgICAgICAgcmVz dWx0Lm1lcmdlX2luKGRlc2MpCiAgICAgICAgZWxzZQogICAgICAgICAgcmVzdWx0ID0gZGVz YwogICAgICAgIGVuZAogICAgICBlbmQKICAgICAgcmVzdWx0CiAgICBlbmQKCiAgZW5kCgpl bmQKCmNsYXNzIERlZmF1bHREaXNwbGF5CgogIGRlZiBkaXNwbGF5X2NsYXNzX2luZm8oa2xh c3MsIHJpX3JlYWRlcikKICAgIHBhZ2UgZG8gCiAgICAgIHN1cGVyY2xhc3MgPSBrbGFzcy5z dXBlcmNsYXNzX3N0cmluZwogICAgICAKICAgICAgaWYgc3VwZXJjbGFzcwogICAgICAgIHN1 cGVyY2xhc3MgPSAiIDwgIiArIHN1cGVyY2xhc3MKICAgICAgZWxzZQogICAgICAgIHN1cGVy Y2xhc3MgPSAiIgogICAgICBlbmQKICAgICAgCiAgICAgIEBmb3JtYXR0ZXIuZHJhd19saW5l KGtsYXNzLmRpc3BsYXlfbmFtZSArICI6ICIgKwogICAgICAgICAgICAgICAgICAgICAgICAg ICBrbGFzcy5mdWxsX25hbWUgKyBzdXBlcmNsYXNzKQogICAgICAKICAgICAgZGlzcGxheV9m bG93KGtsYXNzLmNvbW1lbnQpCiAgICAgIEBmb3JtYXR0ZXIuZHJhd19saW5lIAogICAgCiAg ICAgIHVubGVzcyBrbGFzcy5pbmNsdWRlcy5lbXB0eT8KICAgICAgICBAZm9ybWF0dGVyLmJs YW5rbGluZQogICAgICAgIEBmb3JtYXR0ZXIuZGlzcGxheV9oZWFkaW5nKCJJbmNsdWRlczoi LCAyLCAiIikKICAgICAgICBpbmNzID0gW10KICAgICAgICBrbGFzcy5pbmNsdWRlcy5lYWNo IGRvIHxpbmN8CiAgICAgICAgICBpbmNfZGVzYyA9IHJpX3JlYWRlci5maW5kX2NsYXNzX2J5 X25hbWUoaW5jLm5hbWUpCiAgICAgICAgICBpZiBpbmNfZGVzYwogICAgICAgICAgICBzdHIg PSBpbmMubmFtZSArICIoIgogICAgICAgICAgICBzdHIgPDwgaW5jX2Rlc2MuaW5zdGFuY2Vf bWV0aG9kcy5tYXB7fG18IG0ubmFtZX0uam9pbigiLCAiKQogICAgICAgICAgICBzdHIgPDwg IikiCiAgICAgICAgICAgIGluY3MgPDwgc3RyCiAgICAgICAgICBlbHNlCiAgICAgICAgICAg IGluY3MgPDwgaW5jLm5hbWUKICAgICAgICAgIGVuZAogICAgICBlbmQKICAgICAgICBAZm9y bWF0dGVyLndyYXAoaW5jcy5zb3J0LmpvaW4oJywgJykpCiAgICAgIGVuZAoKICAgICAgdW5s ZXNzIGtsYXNzLmNvbnN0YW50cy5lbXB0eT8KICAgICAgICBAZm9ybWF0dGVyLmJsYW5rbGlu ZQogICAgICAgIEBmb3JtYXR0ZXIuZGlzcGxheV9oZWFkaW5nKCJDb25zdGFudHM6IiwgMiwg IiIpCiAgICAgICAgbGVuID0gMAogICAgICAgIGtsYXNzLmNvbnN0YW50cy5lYWNoIHsgfGN8 IGxlbiA9IGMubmFtZS5sZW5ndGggaWYgYy5uYW1lLmxlbmd0aCA+IGxlbiB9CiAgICAgICAg bGVuICs9IDIKICAgICAgICBrbGFzcy5jb25zdGFudHMuZWFjaCBkbyB8Y3wKICAgICAgICAg IEBmb3JtYXR0ZXIud3JhcChjLnZhbHVlLCAKICAgICAgICAgICAgICAgICAgICAgICAgICBA Zm9ybWF0dGVyLmluZGVudCsoKGMubmFtZSsiOiIpLmxqdXN0KGxlbikpKQogICAgICAgIGVu ZCAKICAgICAgZW5kCgogICAgICB1bmxlc3Mga2xhc3MuY2xhc3NfbWV0aG9kcy5lbXB0eT8K ICAgICAgICBAZm9ybWF0dGVyLmJsYW5rbGluZQogICAgICAgIEBmb3JtYXR0ZXIuZGlzcGxh eV9oZWFkaW5nKCJDbGFzcyBtZXRob2RzOiIsIDIsICIiKQogICAgICAgIEBmb3JtYXR0ZXIu d3JhcChrbGFzcy5jbGFzc19tZXRob2RzLm1hcHt8bXwgbS5uYW1lfS5zb3J0LmpvaW4oJywg JykpCiAgICAgIGVuZAogICAgICAKICAgICAgdW5sZXNzIGtsYXNzLmluc3RhbmNlX21ldGhv ZHMuZW1wdHk/CiAgICAgICAgQGZvcm1hdHRlci5ibGFua2xpbmUKICAgICAgICBAZm9ybWF0 dGVyLmRpc3BsYXlfaGVhZGluZygiSW5zdGFuY2UgbWV0aG9kczoiLCAyLCAiIikKICAgICAg ICBAZm9ybWF0dGVyLndyYXAoa2xhc3MuaW5zdGFuY2VfbWV0aG9kcy5tYXB7fG18IG0ubmFt ZX0uc29ydC5qb2luKCcsICcpKQogICAgICBlbmQKICAgICAgCiAgICAgIHVubGVzcyBrbGFz cy5hdHRyaWJ1dGVzLmVtcHR5PwogICAgICAgIEBmb3JtYXR0ZXIuYmxhbmtsaW5lCiAgICAg ICAgQGZvcm1hdHRlci53cmFwKCJBdHRyaWJ1dGVzOiIsICIiKQogICAgICAgIEBmb3JtYXR0 ZXIud3JhcChrbGFzcy5hdHRyaWJ1dGVzLm1hcHt8YXwgYS5uYW1lfS5zb3J0LmpvaW4oJywg JykpCiAgICAgIGVuZAoKICAgICAgdW5sZXNzIGtsYXNzLnN1YmNsYXNzZXMuZW1wdHk/CiAg ICAgICAgQGZvcm1hdHRlci5ibGFua2xpbmUKICAgICAgICBAZm9ybWF0dGVyLmRpc3BsYXlf aGVhZGluZygiU3ViQ2xhc3NlczoiLCAyLCAiIikKICAgICAgICBAZm9ybWF0dGVyLndyYXAo a2xhc3Muc3ViY2xhc3Nlcy5zb3J0LmpvaW4oJywgJykpCiAgICAgIGVuZAogICAgZW5kCiAg ZW5kCmVuZAoKcmkgPSBSaURyaXZlci5uZXcKcmkucHJvY2Vzc19hcmdzCg --------------050706050807050402020306-- --------------enig5CA113EFF872EFA9195D832D Content-Type: application/pgp-signature; name="signature.asc" Content-Description: OpenPGP digital signature Content-Disposition: attachment; filename="signature.asc" -----BEGIN PGP SIGNATURE----- Version: GnuPG v1.4.2 (FreeBSD) Comment: Using GnuPG with Mozilla - http://enigmail.mozdev.org iD8DBQFETTv4evlgTHEIT4YRAv2iAJwNmc9ipjv2x1/7W6HJBI4wfub1agCghDhM Zt74sY7VpvecjNsUC7dqhj0÷Ãy -----END PGP SIGNATURE----- --------------enig5CA113EFF872EFA9195D832D--