Xml extension changes
Stefano Corsi <[email protected]> Mon, 5 May 2003 11:05:04 +0000
| Newsgroups | gmane.comp.lang.moto.devel |
|---|---|
| Organization | Moto Project |
| Message-ID | <[email protected]> |
--------------Boundary-00=_GSUE3HPHO2A42QOY1ESL Content-Type: text/plain; charset="us-ascii" Content-Transfer-Encoding: quoted-printable Hello, this is a new version of the Xml extension I posted before. Now it has read/write mode (you can save to a new XmlDoc) and the ability= to=20 add new nodes and attributes. Furthermore, because we probably don't want the full complexity of libxml= 2, I=20 have simplified function names and parameters, so that, for example,=20 xmlNodeListGetString becomes getString()... I still have to add error handling and more features, but I'm amazed abou= t how=20 smooth it was to add support for a new external lib in moto! Stefano --------------Boundary-00=_GSUE3HPHO2A42QOY1ESL Content-Type: application/x-gzip; name="xml2.patch.gz" Content-Transfer-Encoding: base64 Content-Disposition: attachment; filename="xml2.patch.gz" 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 --------------Boundary-00=_GSUE3HPHO2A42QOY1ESL--